Configurer eclipse pour intégrer une requête shell au makefile

HSylvio Messages postés 116 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 14 juin 2012 - 21 févr. 2012 à 15:01
HSylvio Messages postés 116 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 14 juin 2012 - 21 févr. 2012 à 18:21
Bonjour,

je démarre tout juste le développement d'un petit logiciel qui aura besoin d'utiliser des fonctions d'un autre programme (Mapnik).

Le fichier demo.cpp dans le répertoire d'install de Mapnik se compile avec un makefile fourni (ci-dessous), dans lequel il y a une commande shell qui permet d'intégrer les dépendances et répertoires d'include en direct.

Quelqu'un sait-il comment intégrer ce type d'arguments dans eclipse pour qu'il intégre tout ce qu'il faut dans le make?
Je ne veux pas faire mon propre makefile parce que le projet démarre tout juste et que j'ai pas envie d'avoir à le modifier à la main dès que je rajoute 2 classes....

Makefile de demo.cpp
CXX = g++

CXXFLAGS = $(shell mapnik-config --cflags)
LDFLAGS = $(shell mapnik-config --libs --dep-libs --ldflags)

OBJ = rundemo.o

BIN = rundemo

all : $(BIN)

$(BIN) : $(OBJ)
$(CXX) $(OBJ) $(LDFLAGS) -o $@

.c.o :
$(CXX) -c $(CXXFLAGS) $<

.PHONY : clean

clean: 
rm -f $(OBJ)
rm -f $(BIN)


où mapnik-config --cflags renvoie
-I/usr/local/include -I/usr/local/include -I/usr/include -I/usr/include/freetype2 -I/usr/include/libxml2 -I/usr/include/gdal -I/usr/include/postgresql -DHAVE_JPEG -DBOOST_REGEX_HAS_ICU -ansi -Wall -pthread -ftemplate-depth-300 -DLINUX -DBOOST_SPIRIT_THREADSAFE -DMAPNIK_THREADSAFE -O3 -finline-functions -Wno-inline -Wno-parentheses -Wno-char-subscripts -DNDEBUG -DHAVE_CAIRO -DHAVE_LIBXML2 -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/cairomm-1.0 -I/usr/lib/cairomm-1.0/include -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include
(dans mon cas actuel mais ça changera dès la prochaine RC...)

1 réponse

HSylvio Messages postés 116 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 14 juin 2012
21 févr. 2012 à 18:21
Bon ben petit auto-reply du jour :

Dans les propriétés du programme, on peut ajouter les commandes shell en tant que string
(C/C++ Build => Build Variables => add : CXXFLAGS _ String _ $(shell mapnik-config --cflags) et LDFLAGS _ String _ $(shell mapnik-config --libs --dep-libs --ldflags) pour mon exemple)

Puis dans C/C++ Build => Settings, il suffit d'ajouter ces variables à "Command line pattern" (à la fin ?!?) :
${CXXFLAGS} pour le "GCC C++ Compiler" et ${LDFLAGS} dans le Linker.

A demain ;)
0
Rejoignez-nous