Compilation avec un Makefile
Bonjour,
J'ai un petit problème avec les gtk-config
J'ai installé les librairies gtk avec le cd de Mdk9, et j'ai quelques problèmes de path.
En effet gtk-config permet d'avoir accès à la config du compilateur pour les bibliothèques avec --libs et les includes avec --cflags si je me trompe pas.
Mon premier problème c'est que les librairies ne sont pas toutes au bon endroit, alors comment modifier ce path ?
Mon deuxième problème c'est que j'ai passé moi meme le path dans un Makefile :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
# basic GTK+ app makefile
SOURCES = myprg.c
OBJS = ${SOURCES:.c=.o}
CFLAGS = I/usr/include/gtk1.2
LDADD = L/usr/X11R6/lib -lXi -lX11 -LXext L/usr/lib -lgtk -ld -lm -lgdk 'et d'autre
CC = gcc
PACKAGE = myprg
all : ${OBJS}
${CC} -o ${PACKAGE} ${OBJS} ${LDADD}
.c.o:
${CC} ${CFLAGS} -c $<
# end of file |
Il me trouve bien les biblio mais j'ai encore une erreur dans :
Citation:
gcc : usr/lib/gcc-lib/i586-linux-gnu/../../crt1.o
ld return exit 1
Voila si quelqu'un peut m'aider...
Re: [compilateur] gcc>k
Citation:
Envoyé par Mau
Bonjour,
J'ai un petit problème avec les
gtk-config
J'ai installé les librairies gtk avec le cd de Mdk9, et j'ai quelques problèmes de path.
En effet
gtk-config permet d'avoir accès à la config du compilateur pour les bibliothèques avec
--libs et les includes avec
--cflags si je me trompe pas.
Mon premier problème c'est que les librairies ne sont pas toutes au bon endroit, alors comment modifier ce path ?
Mon deuxième problème c'est que j'ai passé moi meme le path dans un Makefile :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
# basic GTK+ app makefile
SOURCES = myprg.c
OBJS = ${SOURCES:.c=.o}
CFLAGS = I/usr/include/gtk1.2
LDADD = L/usr/X11R6/lib -lXi -lX11 -LXext L/usr/lib -lgtk -ld -lm -lgdk 'et d'autre
CC = gcc
PACKAGE = myprg
all : ${OBJS}
${CC} -o ${PACKAGE} ${OBJS} ${LDADD}
.c.o:
${CC} ${CFLAGS} -c $<
# end of file |
Il me trouve bien les biblio mais j'ai encore une erreur dans :
Citation:
gcc : usr/lib/gcc-lib/i586-linux-gnu/../../crt1.o
ld return exit 1
Voila si quelqu'un peut m'aider...
Dans un makefile, on ne met pas les variavbles du Makefile entre guillemets (ca c est pour les variables d env par exemple). Il vaut mieux les mettre entre parentheses.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
# basic GTK+ app makefile
SOURCES = myprg.c
OBJS = $(SOURCES:.c=.o)
CFLAGS = -I/usr/include/gtk1.2
# c est bizarre ca. Il devrait y avoir la glib aussi
LIBS = -L/usr/X11R6/lib -lXi -lX11 -LXext -L/usr/lib -lgtk -ld -lm -lgdk 'et d'autre
CC = gcc
PACKAGE = myprg
all : $(OBJS)
$(CC) -o $(PACKAGE) $(OBJS) $(LIBS)
# end of file |
Ca doit marcher normalement. Apres soit tu as mal installer gtk. Il y a quoi dans ton prog et le msg d erreur c est celuiq eu tu nous as montre ?
zero tu as la reponse la : I/usr/include/gtk1.2 ;)