2013-10-15 5 views
0

Actuellement, je travaille dans un référentiel contenant plusieurs projets. J'ai hérité de ce référentiel, donc son architecture n'est pas mon design. Chaque projet dépend de certains fichiers source qui sont les mêmes partout. En ce moment, ma solution rapide et sale est juste de mettre à jour continuellement les fichiers dans chaque sous-répertoire de projet à travers shudder copier-pâtes. Quelle pourrait être une meilleure façon de gérer ces dépendances sans dupliquer les fichiers source? Comme note ajoutée, créer des bibliothèques à stocker dans mon chemin d'utilisateur ne serait pas une option viable. Cela faciliterait grandement les tests unitaires et la mise à jour des fonctionnalités de tous les projets. Merci pour le conseil!Gestion des dépendances C++ sur plusieurs projets

+0

Utiliser des bibliothèques statiques? Utilisez simplement * une * instance des fichiers communs et compilez-les dans les différents projets, en ajustant les chemins si nécessaire? Quoi que vous fassiez, ** ne dupliquez pas de code ** c'est un enfer de maintenance. – syam

Répondre

1

Cela semble être le travail parfait pour Maven. Si vous travaillez avec C++, vous devrez utiliser un plugin pour la prise en charge de la compilation de code natif. Jetez un coup d'oeil dans ceci:

http://duns.github.io/maven-nar-plugin/

+0

Maven serait merveilleux, avais-je cette flexibilité. Malheureusement, je suis limité à l'utilisation d'outils Unix purs et prêts à l'emploi. Je vais certainement garder ce plugin à l'esprit pour d'autres projets cependant. –

1

Ne pas dupliquer les fichiers source commune pour chaque projet. Au lieu de cela, placez-les dans un dossier appelé CommonSrc, puis utilisez 'add existing ...' pour inclure les sources dans chaque projet.

Soit cela, ou de compiler les sources communes à une bibliothèque, puis lier statiquement ou dynamiquement à cela.

+0

Liaison statique sera probablement la route que je prends. –

Questions connexes