Tente reordenar as opções do gcc, isto é, use:
gcc main.c -o test 'pkg-config --cflags --libs gtk+-3.0'
Eu recentemente decidi aprender o gtk +, então eu instalei o pacote gtk3 developement que contém todas as bibliotecas necessárias, então eu simplesmente escrevi um teste de programa simples que deveria exibir uma janela gtk simplesmente e compilá-lo com o comando abaixo:
gcc 'pkg-config --cflags --libs gtk+-3.0' main.c -o test
E o problema está na hora do link onde estou obtendo referência indefinida para todas as funções de chamada: (
/tmp/ccVQOyCZ.o: In function 'main':
main.c:(.text+0x1f): undefined reference to 'gtk_init'
main.c:(.text+0x29): undefined reference to 'gtk_window_new'
main.c:(.text+0x43): undefined reference to 'g_type_check_instance_cast'
main.c:(.text+0x64): undefined reference to 'g_signal_connect_data'
main.c:(.text+0x70): undefined reference to 'gtk_widget_show'
main.c:(.text+0x75): undefined reference to 'gtk_main'
/tmp/ccVQOyCZ.o: In function 'OnDestroy':
main.c:(.text+0x96): undefined reference to 'gtk_main_quit'
collect2: ld returned 1 exit status
Voilà, se alguém tiver uma solução ...
Tente reordenar as opções do gcc, isto é, use:
gcc main.c -o test 'pkg-config --cflags --libs gtk+-3.0'