J'avais un peu laissé tombé tout ça faute de temps, je m'y suis remis hier et maintenant ça marche sans problème.
Il faut donc décompresser les fichiers de développement de gtk+ (trouvé ici : [
www.gimp.org]) dans /usr/i586-mingw32msvc/ (sous Debian Sarge) puis modifier les fichiers .pc avec ce script :
#!/bin/sh
TARGET=/usr/i586-mingw32msvc
for f in *.pc ; do
if grep 'prefix=/target' $f >/dev/null 2>&1 ; then
cat $f | sed s+^prefix=/target+prefix=$TARGET+ > $f.tmp
mv $f.tmp $f
fi
done
qui est celui du lien donné par Thib_G, en adaptant simplement la valeur de TARGET.
Il y a ensuite quelques variables d'environnement à définir, avant la compilation, avec le fichier
cross.env (toujours sur la page indiqué par Thib_G) en adaptant la valeur de PREFIX.
On peut alors compiler sans problème avec i586-mingw32msvc-gcc, pkg-config marche sans problème.
J'ai aussi essayer en C++ avec GTKmm, et là ça ne marche plus, j'ai des erreurs du type :
main.o: dans la fonction « main »:
main.c++
.text+0x2e): undefined reference to `_ZN3Gtk4MainC1ERiRPPcb'
main.c++
.text+0x44): undefined reference to `_ZN3Gtk4Main3runERNS_6WindowE'
main.c++
.text+0x5a): undefined reference to `_ZN3Gtk4MainD1Ev'
main.c++
.text+0x8a): undefined reference to `_ZN3Gtk4MainD1Ev'
main.c++
.text+0x98): undefined reference to `_Unwind_Resume'
Il faut dire que pour les versions win32 de gtkmm, il y a seulement un installateur, j'ai du l'éxecuter avec wine puis récupéré les fichiers dans ~/.wine/drive_c/GTK, ce qui n'est pas forcément la meilleure méthode.
Poste le Monday 14 August 2006 17:00:19