Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre du Club
    Compilation de gtkglext pour Windows sous Linux
    Bonjour tout le monde.
    En essayant de faire la cross compilation d'un programme utilisant les bibliothèques opengl; gtk+ et gtkglext, j'ai fait les étapes suivantes :
    "je suis sous archlinux"
    1- j'ai installé mingw-w64
    2-j'ai télécharger gtk+-bundle_2.24.10-20120208_win32.zip, et je l'ai extrait dans le dossier /opt/gtk-win32
    3-j'ai télécharger gtkglext-1.2.0.tar.gz, je l'ai extrait, puis, je l'ai compilé à l'aide de cette commande :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
      ./configure --prefix=/opt/gtk-win32/ --with-gdktarget=win32 --with-gl-includedir=/usr/i686-w64-mingw32/include/GL/ --with-gl-libdir=/usr/i686-w64-mingw32/lib

    à la fin de cette commande je reçois ce message :
    checking for glNewList in -lopengl32... no
    configure: error: Cannot find GL library

    Qu'est ce que je dois faire ?
    merci pour votre aide.

  2. #2
    Modérateur

    Bonjour,

    tout d'abord quelques questions sur les technologies utilisées. GTK+ 3 est depuis plusieurs années la version stable. Pour quelle raison utilises tu GTK+ 2 ? Dans GTK+ 3 tu peux faire de l'opengl avec GtkGLArea qui est directement intégré, donc pas de bibliothèque annexe à compiler.

    Pour ce qui est de ton soucis de compilation, est-ce que tu es sûr d'avoir une lib opengl dans /usr/i686-w64-mingw32/lib ?
    Documentation officielle GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels par l'exemple (platform-demos):
    GTK (tous langages)

  3. #3
    Membre du Club
    Citation Envoyé par liberforce Voir le message


    tout d'abord quelques questions sur les technologies utilisées. GTK+ 3 est depuis plusieurs années la version stable. Pour quelle raison utilises tu GTK+ 2 ? Dans GTK+ 3 tu peux faire de l'opengl avec GtkGLArea qui est directement intégré, donc pas de bibliothèque annexe à compiler.
    Je ne sais pas ceci, c'est une bonne nouvelle pour moi mon ami

    Citation Envoyé par liberforce Voir le message


    Pour ce qui est de ton soucis de compilation, est-ce que tu es sûr d'avoir une lib opengl dans /usr/i686-w64-mingw32/lib ?
    Oui, je suis sûr, j'ai libopengl32.a
    En tout cas, je vais essayer gtk+3.
    Je vais revenir si ça marche pas
    Merci beaucoup mon ami liberforce

  4. #4
    Modérateur

    Tu peux aussi précéder ta commande par:
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    strace -ff -eopen


    Cela te permettra de savoir où il essaie exactement de trouver la libopengl32.
    Documentation officielle GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels par l'exemple (platform-demos):
    GTK (tous langages)

  5. #5
    Membre du Club
    Pour gtk+3.0 :
    j'ai suivi ce lien http://www.tarnyko.net/en/?q=node/45
    à la compilation j'ai eu ce programme :
    In file included from /usr/include/glib-2.0/gio/gio.h:46:0,
    from /usr/include/gtk-3.0/gdk/gdkapplaunchcontext.h:28,
    from /usr/include/gtk-3.0/gdk/gdk.h:32,
    from /usr/include/gtk-3.0/gtk/gtk.h:30,
    from test.c:2:
    /usr/include/glib-2.0/gio/gcredentials.h:75:1: error: unknown type name ‘uid_t’
    uid_t g_credentials_get_unix_user (GCredentials *credentials,
    ^~~~~
    /usr/include/glib-2.0/gio/gcredentials.h:79:52: error: unknown type name ‘uid_t’; did you mean ‘pid_t’?

    qu'est ce qu'il y a encore ?
    merci pour votre temps.

  6. #6
    Membre du Club
    OK OK OK c'était une grosse bêtise, j'ai nommé le dossier gtk3_win32 avec "underscore" et je fais export PKG_CONFIG_PATH=/opt/gtk3-win32/lib/pkgconfig au lieu de taper : export PKG_CONFIG_PATH=/opt/gtk3_win32/lib/pkgconfig.
    Je suis désolé

  7. #7
    Modérateur

    Pas de soucis . En revanche, autres infos importantes

    Ce tuto a 4 ans . Depuis un moment les paquets précompilés officiels pour Windows sont fournis par le projet MSYS2.
    Tu peux aller regarder sur leur dépôt pour binaire i686 vu que tu veux faire du 32 bits: http://repo.msys2.org/mingw/i686/

    Le paquet en question s'appelle mingw-w64-i686-gtk3. La dernière version en date est mingw-w64-i686-gtk3-3.22.9-1-any.pkg.tar.xz
    Tu as aussi la glib 2.54.2 fournie par mingw-w64-i686-glib2-2.54.2-1-any.pkg.tar.xz, il te faudra cairo mingw-w64-i686-cairo-1.15.6-2-any.pkg.tar.xz, gdk-pixbuf...

    Normalement tu n'en as besoin que pour redistribuer ton application, pas pour le build je pense.
    Documentation officielle GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels par l'exemple (platform-demos):
    GTK (tous langages)

  8. #8
    Membre du Club
    Alors comment fais je pour compiler ?
    J'ai télécharger le fichier mingw-w64-i686-gtk3-3.22.9-1-any.pkg.tar.xz et je l'ai éxtrait dans le dossier /opt/gtk3_min32.
    qu'est ce que je dois faire pour continuer la compilation ?
    merci mille fois

  9. #9
    Modérateur

    Désolé mais je vais avoir du mal à te guider plus, c'est quelque chose que je n'ai jamais fait . J'ai déjà buildé avec MinGW, mais en natif sous Windows.

    Je te conseille de poster dans la mailing list gtk-app-devel-list:
    https://mail.gnome.org/mailman/listi...app-devel-list

    ou sur le canal IRC des développeurs de GTK+: #gtk+ irc://irc.gnome.org/#gtk+
    Documentation officielle GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels par l'exemple (platform-demos):
    GTK (tous langages)