J'ai un projet C++ multiplate-forme. Dans ce projet, nous utilisons plusieurs bibliothèques tierces compilées statiquement qui sont assez volumineuses et difficiles à construire.Inclusion de bibliothèques précompilées dans l'arborescence source
Actuellement, notre arbre source ressemble à ceci:
|
+-3rdparty
| +-include (initially empty)
| +-lib (initially empty)
| +-some-library
| +-another-library
|
+-source
Lors de la vérification du code, un développeur devrait d'abord construire et installer « une bibliothèque » et « une autre bibliothèque ». L'étape d'installation mettrait les bons fichiers dans les dossiers include et lib, puis ils peuvent construire notre projet. Afin de faciliter la construction de notre projet, je pensais supprimer "some-library" et "another-library", et simplement mettre les includes et les binaires pré-compilés dans des dossiers include et lib. De cette façon, un nouveau développeur devrait simplement vérifier le projet et le construire immédiatement.
Mes questions sont les suivantes:
Est-ce une mauvaise pratique de le faire? (ie: inclure des bibliothèques précompilées dans votre arbre source).
Quels sont les problèmes/inconvénients potentiels de cette configuration?
Quelle est l'organisation des dossiers que vous proposez de prendre en compte pour les différentes plates-formes (Windows, Mac OSX et Linux)?
Note supplémentaire: nous utilisons Mercurial.
duplication possible de [Can (Should)) je mets les bibliothèques tierces dans le contrôle de version?] (Http://stackoverflow.com/questions/1710027/can-should-i-put-3rd-party-libraries-in- version-control) – durron597