Hello,
I have a cross-platform C++ project. In this project, we use several third-party, statically-compiled libraries that are quite huge and not easy to build.
Currently, our source tree looks like this:
|
+-3rdparty
| +-include (initially empty)
| +-lib (initially empty)
| +-some-library
| +-another-library
|
+-source
When checking out the code, a developer would first build and install "some-library" and "another-library". The install step would put the right files into the include and lib folders, and then they can build our project.
In order to make building our project easier, I was thinking of removing "some-library" and "another-library", and instead just put the includes and the pre-compiled binaries into include and lib folders. This way, a new developper would just have to checkout the project, and build it straight away.
My questions are:
Is it a bad practice to do so? (ie: including precompiled libraries into your source tree).
What potential problems / drawbacks may arise from this setup?
What folder organization you would suggest to account for the several platforms (Windows, Mac OSX, and Linux)?
Additional note: we are using Mercurial.
Thanks a lot
Greg