J'ai un projet qui utilise 3-4 différentes bibliothèques C / C ++ open source.
J'ai construit ces bibliothèques pour plusieurs plates-formes et archivé des fichiers et des bibliothèques statiques pour différentes plates-formes dans mon projet.
Cependant, je lutte avec quelques problèmes. Tous ces projets concernent la gestion des dépendances. Et je recherche des conseils sur les meilleures pratiques.
1) Comment savoir exactement ce que j'utilise?
Je n'ai aucun moyen d'obtenir une version d'une bibliothèque statique. Par conséquent, j'ai besoin de suivre en quelque sorte la version de la bibliothèque statique que j'utilise (peut-être SHA d'un commit à partir duquel il a été construit)?
Ceci est particulièrement important lorsque j'ai besoin de savoir quand mettre à niveau ces bibliothèques.
2) Comment reproduire la version?
J'aurais pu avoir du mal à construire une bibliothèque spécifique pour une plate-forme spécifique. Il m'a fallu un certain temps pour le comprendre.
La prochaine fois que j'aurai besoin de construire la même bibliothèque pourrait être dans un semestre (quand j'aurai besoin de mettre à niveau pour une raison quelconque. Cependant, d'ici là, je ne me souviendrai définitivement de rien et d'un environnement sur lequel elle a été construite sera disparu depuis longtemps.
3) Dois-je bifurquer ces bibliothèques pour avoir une copie du code source?
C'est une préoccupation moindre. Cependant, c'est toujours une préoccupation. Il est agréable de s'assurer que les versions sont reproductibles (et que ce type de code nécessite du code source).