[Windows]Compiler une application utilisant gtk avec msys et mingw
Bonjour,
Je relance ce sujet pour lequel je n'ai pas trouv� de solution qui me semble assez compl�te.
Mon probl�me est que j'ai des portions de code que je dois compiler de cette fa�on et tant qu'� faire j'aimerais que toute l'application soit compil�e dans cet environnement.
J'avais d�j� install� dans c:\GTK un runtime GTK pour tester pyGTK que j'ai r�cup�r� via gladewin32.sourceforge.net.
Pour compiler mon hello world en C/Gtk, je dois installer les packages DEV de GTK.
J'ai trouv� un bundle all-in-one sur http://www.gtk.org/download-windows.html que j'ai d�compress� dans c:\Gtk-dev
J'ai modifi� le fichier /etc/profile dans l'arborescence MSYS pour y ajouter les 2 lignes suivantes :
Code:
1 2 3
|
export PKG_CONFIG_PATH=/c/Gtk-dev/lib/pkgconfig
export PATH="$PATH:/c/Gtk-dev/bin" |
J'ai cr�� un makefile pour compiler mon programme suivant le mod�le extrait de la FAQ GTK http://library.gnome.org/devel/gtk-faq/stable/x426.html
Malheureusement, j'ai une erreur de compilation sur le package pixman-1 requis par cairo 8O.
Effectivement, dans le package all-in-one le fichier c:\Gtk-dev\lib\pkgconfig\cairo.pc contient la ligne suivante :
Code:
1 2
|
Requires.private: libpng13 pixman-1 >= 0.10.0 |
or je ne vois pas dans les lib de pixman-1.lib dans cette arborescence.
J'ai supprim� le contenu du r�pertoire c:\Gtk-dev
J'ai donc voulu proc�der � partir des package �l�mentaires de GTK. J'ai donc d�compress� les 5 packages de base de GTK (version DEVelopper) :
Dans le r�pertoire c:\Gtk-dev
J'ai d�compress� les 5 third party dependencies requis (version Binaire) dans le m�me r�pertoire (c:\Gtk-dev) :
- zlib
- gettext-runtime
- libpng
- libjpeg
- libtiff
Il a fallu :
- que je d�place le fichier zlib1.dll de c:\Gtk-dev vers c:\Gtk-dev\bin
- que je d�compacte le third party pkg-config (version Binaire) dans c:\Gtk-dev
Lorsque j'ai voulu compiler, j'ai eu une erreur :
Code:
1 2
|
...ld.exe cannot find -lintl |
qui vient de c:\Gtk-dev\lib\pkgconfig\glib-2.0.pc o� l'on a la ligne suivante :
Code:
1 2
|
Libs: -L${libdir} -lglib-2.0 -lintl |
J'ai supprim� la directive -lintl puisque l� aussi je n'avais pas de fichier intl.lib (qui se trouve par contre dans le package all-in-one).
Mon hello world (http://library.gnome.org/devel/gtk-t...SEC-HELLOWORLD) compile et s'ex�cute :P
Voil� si �a peut �tre utile � d'autres comme certain post m'ont �galement aid�.
Par contre, je suis perturb�e car les binaires install�s avec le runtime (2.12.9) ne semblent pas les m�mes que ceux du bundle (2.12.9 �galement) : par exemple dans le premier on a libpng12.dll, dans le second libpng13.dll. Je crains de faire un m�lange sur ma machine ou que ma proc�dure ne soit pas bonne.
Si quelqu'un a des �claircissements sur le sujet, ainsi que sur la librairie intl.lib que j'ai enlev�e de glib-2.0.pc cela m'int�resserait.
Merci