Bonjour,
Je suis en train d'utiliser un librairie partagée (.so) pour le développement d'une appli C++.
Mon problème c'est que pour le Makefile que j'ai recupéré je ne suis pas capable de faire ce que je voudrais :
Je voudrais obtenir pour la deuxième instruction:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 #ça c'est ok pour la créartion de l'objet g++ -I/usr/include/mysql -I/usr/include/mysql++ -I/usr/lib -O0 -c simple2.cpp #ça ce n'est pas ok g++ -L/usr/lib /simple2.o -o simple2 -lmysqlclient -lmysqlpp g++: /simple2.o: No such file or directory
Mon makefile est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3#ça ce n'est pas ok g++ -L/usr/lib simple2.o -o simple2 -lmysqlclient -lmysqlpp
Peut quelqu'un me donner un coup de main avec ça ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 CXX=g++ INCLUDES=-I/usr/include/mysql -I/usr/include/mysql++ -I/usr/lib CXXFLAGS=$(INCLUDES) -O0 -c LD=$(CXX) LDFLAGS=-L/usr/lib LDEXEFLAG=-o LIBS=-lmysqlclient -lmysqlpp DEL=rm -f .SUFFIXES: .cpp .o .cpp.o: $(CXX) $(CXXFLAGS) $< define mk-objlist $(foreach O,$1,\ $(if $(findstring $(BIN_DIR)/,$(O)),$(O),$(BIN_DIR)/$(O))) endef ifndef BIN_DIR BIN_DIR=. endif BINARIES=simple2 SIMPLE1_OBJS=simple2.o all debug: $(BINARIES) .PHONY: release release: $(MAKE) BIN_DIR=release clean: $(RM) $(LOCAL_CLEAN) simple2: $(SIMPLE1_OBJS) $(LD) $(LDFLAGS) $(call mk-objlist,$^) $(LDEXEFLAG)$@ $(LIBS) simple2.o: simple2.cpp
Merci !!
Partager