Je suis actuellement en train de porter mon projet C++ pour utiliser la chaîne d'outils GNU autotools, et j'ai des problèmes pour configurer les dépendances de ma bibliothèque. Ce qui semble se produire est qu'il donne la commande ar
drapeaux destinés à g ++, tels que -lSDL2 -L/usr/local/lib -lSDL2_image -lSDL2
.Autotools ajoute des drapeaux de bibliothèque à ar
Voici le code pour src/Makefile.am
:
noinst_LIBRARIES = libccade.a
libccade_a_SOURCES = CCade.h CCade_graphics.h CCade_graphics.cpp CCade_util.h CCade_util.cpp
libccade_a_LIBADD = $(libsdl2_LIBS) $(libsdl2_image_LIBS)
libccade_a_CFLAGS = $(libsdl2_CFLAGS) $(libsdl2_image_CFLAGS)
Voici ce que make
met à:
ar cru libccade.a CCade_graphics.o CCade_util.o -lSDL2 -L/usr/local/lib -lSDL2_image -lSDL2
ar: invalid option -- 'L'
Usage: ar [emulation options] [-]{dmpqrstx}[abcDfilMNoPsSTuvV] [--plugin <name>] [member-name] [count] archive-file file...
...(more documentation on ar)...
Il semble ajouter les args de libccade_a_LIBADD
, mais si je retire cette variable, il wouldn Ne donnez pas les drapeaux à g++
. Que fais-je?
J'ai essayé de suivre votre solution, et même si je crois que je suis un peu plus près, j'ai toujours la même erreur. –
@MathManiac Avez-vous ** remplacé ** votre code par mon code ou votre code est-il toujours là? – Galik
* EDIT: * Attendez .. Je me suis rendu compte que vous avez ajouté "LT" sur la deuxième variable. Changer cela maintenant .. –