2010-06-14 3 views
2

Je développe un nouveau projet, en utilisant Autotools pour mon infrastructure de construction. Je souhaite intégrer des dépendances externes dans mon arborescence source. Ces dépendances utilisent aussi Autotools. Comment puis-je configurer les scripts de construction de mon projet pour créer et lier des dépendances subsumées? Bien que le tutoriel de Duret-Lutz soit excellent, cette situation n'est abordée que brièvement dans quelques diapositives. J'ai trouvé son explication profondément confuse.Subsume bibliothèque externe dans l'arborescence source avec Autotools

En ajoutant le nom de répertoire des dépendances subsumées aux sous-répertoires de Makefile.am, la dépendance est en cours de configuration et de construction. Il est possible de définir manuellement les chemins d'inclusion via CFLAGS, mais comment puis-je lier les fichiers libtool .la?

Répondre

1

Vous pouvez ajouter les bibliothèques avec des chemins relatifs.

SUBDIRS = extern 
foo_SOURCES = foo/x.c ... 
foo_LDADD = extern/bar/libbaz.la 
foo_DEPENDENCIES = extern/bar/libbaz.la # Hack to prevent atomake from screwing parallel builds 
+1

Parfait, merci. C'est drôle comme il est difficile de chercher quelque chose dans les manuels GNU si vous ne connaissez pas le nom de la chose que vous recherchez. – troutwine

+0

Normalement, toute bibliothèque apparaissant dans 'foo_LDDADD' apparaîtra automatiquement dans' foo_DEPENDENCIES'. Donc, la ligne ci-dessus 'foo_DEPENDENCIES' n'est pas nécessaire. Si vous trouvez que vous en avez besoin dans ce cas, c'est un bug que vous devriez signaler. – adl

Questions connexes