J'essaie de compiler du code qui fonctionne sur os x et linux en utilisant cygwin. Cependant, je trouve que l'argument order to gcc donne des résultats imprévus.argument order dans cygwin gcc 4.3 questions lors de la liaison avec glib-2.0
Par exemple, ce qui suit échoue:
gcc -std=gnu99 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -lglib-2.0 -lintl -liconv -fgnu89-inline -fno-leading-underscore -o nb-learn.exe nb-learn.c
mais les travaux suivants:
gcc -std=gnu99 -fgnu89-inline -fno-leading-underscore -o nb-learn.exe nb-learn.c -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -lglib-2.0 -lintl -liconv
Quelqu'un peut-il explique comment cela fonctionne? De plus, y a-t-il des techniques ou du code que je peux utiliser pour obtenir l'autoconf pour changer l'ordre des arguments en fonction de la plateforme?
Voici les deux premières lignes du message d'erreur:
/cygdrive/c/Users/aischein/AppData/Local/Temp/cc9MvUsf.o:nb-learn.c:(.text+0x260): undefined reference to `_g_hash_table_size'
/cygdrive/c/Users/aischein/AppData/Local/Temp/cc9MvUsf.o:nb-learn.c:(.text+0x29c): undefined reference to `_g_hash_table_get_keys'
Merci,
setjmp (gcc 4.3.4)
Quelle est la sortie de 'pkg-config --libs glib-2.0 --cflags glib-2.0'? –
Laurynas, la sortie est: '-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -lglib-2.0 -lintl -liconv' – SetJmp
@SetJmp et quel est le message d'erreur dans le premier cas? –