Compilation GTK
sarah45
-
sarah45 -
sarah45 -
Bonjour,
Bonjour, j'ai un programme des plus basiques en GTK, écrit en C, lorsque je tape ceci dans mon shell:
gcc 'pkg-config --cflags gtk+-3.0' main.c -o test 'pkg-config --libs gtk+-3.0
tout va bien et mon programme est bien crée.
Mais j'ai essayé de faire un Makefile qui fait exactement la même chose:
CC = gcc
CFLAGS = -Wall
CFLAGS += -D_XOPEN_SOURCE=500
CFLAGS += -g
GTK_CFLAGS = 'pkg-config --cflags gtk+-3.0'
GTK_LDFLAGS = 'pkg-config --libs gtk+-3.0'
RM = rm -f
NAME = test
SRCS = main.c
OBJS = $(SRCS:.c=.o)
all: $(NAME)
$(NAME): $(OBJS)
$(CC) $(GTK_CFLAGS) $(SRCS) -o $(NAME) $(GTK_LDFLAGS)
clean:
$(RM) $(OBJS)
fclean: clean
$(RM) $(NAME) *~
re: fclean all
Et là j'ai cette erreur suivante:
In file included from main.c:1:0:
main.h:4:21: fatal error: gtk/gtk.h: Aucun fichier ou dossier de ce type
compilation terminated.
make: *** [main.o] Erreur 1
Quelqu'un pourrait il m'expliquer pourquoi ça ne marche pas et comment corriger le Makefile?
Merci bien.
Bonjour, j'ai un programme des plus basiques en GTK, écrit en C, lorsque je tape ceci dans mon shell:
gcc 'pkg-config --cflags gtk+-3.0' main.c -o test 'pkg-config --libs gtk+-3.0
tout va bien et mon programme est bien crée.
Mais j'ai essayé de faire un Makefile qui fait exactement la même chose:
CC = gcc
CFLAGS = -Wall
CFLAGS += -D_XOPEN_SOURCE=500
CFLAGS += -g
GTK_CFLAGS = 'pkg-config --cflags gtk+-3.0'
GTK_LDFLAGS = 'pkg-config --libs gtk+-3.0'
RM = rm -f
NAME = test
SRCS = main.c
OBJS = $(SRCS:.c=.o)
all: $(NAME)
$(NAME): $(OBJS)
$(CC) $(GTK_CFLAGS) $(SRCS) -o $(NAME) $(GTK_LDFLAGS)
clean:
$(RM) $(OBJS)
fclean: clean
$(RM) $(NAME) *~
re: fclean all
Et là j'ai cette erreur suivante:
In file included from main.c:1:0:
main.h:4:21: fatal error: gtk/gtk.h: Aucun fichier ou dossier de ce type
compilation terminated.
make: *** [main.o] Erreur 1
Quelqu'un pourrait il m'expliquer pourquoi ça ne marche pas et comment corriger le Makefile?
Merci bien.
A voir également:
- Compilation GTK
- Breach compilation c'est quoi - Guide
- Unison gtk - Télécharger - Gestion de fichiers
- Comment faire une compilation de musique - Forum Audio
- Compilation error: expected unqualified-id before '{' token ✓ - Forum C++
- [Gtk+] - Forum Programmation
2 réponses
Bonjour,
essaie d'échapper les simple quotes.
Edit: en cherchant un peu:
Problème de Makefile.. Compilation GTK
Exemple 1 Makefile
Exemple 2 Makefile
essaie d'échapper les simple quotes.
Edit: en cherchant un peu:
Problème de Makefile.. Compilation GTK
Exemple 1 Makefile
Exemple 2 Makefile
ça veut dire quoi échapper les simples quotes?
le fait d'écrire GTK_CFLAGS = $(shell pkg-config --cflags gtk+-3.0)
n'a pas résolu le problème...
le fait d'écrire GTK_CFLAGS = $(shell pkg-config --cflags gtk+-3.0)
n'a pas résolu le problème...
Je viens de tester avec ce Makefile minimaliste:
et tout fonctionne chez moi, tu peux essayer avec les back quotes mais cela reviens quasiment au même.
CC = gcc GTK_CFLAGS = $(shell pkg-config --cflags gtk+-3.0) GTK_LIBS = $(shell pkg-config --libs gtk+-3.0) #GTK_CFLAGS = 'pkg-config --cflags gtk+-3.0' #GTK_LIBS = 'pkg-config --libs gtk+-3.0' all: $(CC) $(GTK_CFLAGS) -o example-0 example-0.c $(GTK_LIBS) clean: rm example-0
et tout fonctionne chez moi, tu peux essayer avec les back quotes mais cela reviens quasiment au même.