IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

GTK+ avec C & C++ Discussion :

Gtk avec OpenGl


Sujet :

GTK+ avec C & C++

  1. #1
    Membre régulier Avatar de acryline
    Profil pro
    Inscrit en
    Août 2006
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 200
    Points : 101
    Points
    101
    Par défaut Gtk avec OpenGl
    Bonjour,
    j'aimerais tester OpenGl et comme j'aime bien GTK+ je me suis renseigner sur la possibilité d'utiliser ces deux bibliothèques ensemble.
    Je suis sous Linux (Ubuntu karmic) et j'utilise Codeblocks.

    J'ai donc découvert GtkGlExt :
    GtkGLExt est une extension OpenGL à GTK+. Elle fournit des objets GDK supplémentaires qui prennent en charge le rendu OpenGL dans GTK+, ainsi que des compléments d'API GtkWidget afin de rendre les composants graphiques GTK+ exploitables avec OpenGL.
    ici

    J'ai téléchargé l'archive gtkglext-1.2.0.tar.gz et je l'ai compilée. (./configure avec options conseillées, make et sudo make install).

    J'ai copié les fichier .pc de l'installation dans mon dossier /usr/lin/pkgconfig.

    Dans codeblocks j'ai ajouté dans Project/build options/ compiler settings/other options : (j'ai tout mis )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    `pkg-config --cflags gtkglext-1.0`
    `pkg-config --cflags gdkglext-1.0`
    `pkg-config --cflags gtkglext-x11-1.0`
    `pkg-config --cflags gdkglext-x11-1.0`
    et dans Project/build options/ Linker settings/ Other linkers options:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    `pkg-config  gtkglext-1.0 --libs`
    `pkg-config  gdkglext-1.0  --libs`
    `pkg-config  gtkglext-x11-1.0  --libs`
    `pkg-config  gdkglext-x11-1.0  --libs`
    Quand je lance une application GTK+ de base j'obtiens ce message d'erreur :
    /usr/local/lib/libgtkglext-x11-1.0.so||undefined reference to `GTK_WIDGET_REALIZED'|
    /usr/local/lib/libgtkglext-x11-1.0.so||undefined reference to `GTK_WIDGET_TOPLEVEL'|
    /usr/local/lib/libgtkglext-x11-1.0.so||undefined reference to `GTK_WIDGET_NO_WINDOW'|
    ||=== Build finished: 3 errors, 0 warnings ===|
    Après avoir fait quelques fouilles j'ai vu que ces trois variables sont dépréciées dans la doc de GTK+.
    Que dois-je penser ?
    - ai-je fait une erreur d'installation de GtkGlExt ? (Oubli d'un composant, d'un lien ?)
    - cette bibliothèque n'est-elle plus à jour ?
    - autres idées ?
    Merci pour vos réponses.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Points : 1 633
    Points
    1 633
    Par défaut
    Pourquoi ne pas installer directement http://packages.ubuntu.com/source/karmic/gtkglext ?

  3. #3
    Membre régulier Avatar de acryline
    Profil pro
    Inscrit en
    Août 2006
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 200
    Points : 101
    Points
    101
    Par défaut
    Merci pour la réponse

    Je l'avais déjà fait mais par acquis de conscience je viens de le refaire, j'ai toujours les mêmes erreurs.
    J'ai oublié de dire que j'ai aussi lié 4 bibliothèques
    /usr/lib/libgdkglext-x11-1.0.a;
    /usr/lib/libgdkglext-x11-1.0.so;
    /usr/lib/libgtkglext-x11-1.0.a;
    /usr/lib/libgtkglext-x11-1.0.so;
    Si je ne le fais pas j'ai encore d'autres erreurs du style :
    /usr/local/lib/libgdkglext-x11-1.0.so||undefined reference to `pango_x_font_subfont_xlfd'|
    /usr/local/lib/libgtkglext-x11-1.0.so||undefined reference to `GTK_WIDGET_REALIZED'|
    /usr/local/lib/libgdkglext-x11-1.0.so||undefined reference to `pango_x_font_map_for_display'|
    /usr/local/lib/libgtkglext-x11-1.0.so||undefined reference to `GTK_WIDGET_TOPLEVEL'|
    /usr/local/lib/libgdkglext-x11-1.0.so||undefined reference to `pango_x_font_cache_unload'|
    /usr/local/lib/libgdkglext-x11-1.0.so||undefined reference to `pango_x_find_first_subfont'|
    /usr/local/lib/libgdkglext-x11-1.0.so||undefined reference to `pango_x_font_map_get_font_cache'|
    /usr/local/lib/libgdkglext-x11-1.0.so||undefined reference to `pango_x_font_cache_load'|
    /usr/local/lib/libgtkglext-x11-1.0.so||undefined reference to `GTK_WIDGET_NO_WINDOW'|
    ||=== Build finished: 9 errors, 0 warnings ===|
    Ce qui me fait penser qu'il faut peut être lier une autre bibliothèque..mais laquelle ?

    Edité : pourtant les 3 variables sont référencées dans gtkwidget.h

  4. #4
    Membre régulier Avatar de acryline
    Profil pro
    Inscrit en
    Août 2006
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 200
    Points : 101
    Points
    101
    Par défaut
    J'ai trouvé ça : http://answerpot.com/showthread.php?105714-Undefined%20Reference%20To%20Gtk_widget_realized
    Il semble qu'il y ait unpatch mais je ne le trouve pas .. est ce que quelqu'un pourrait m'aider à le trouver ?

    Edité : Je pense qu'il faut la nouvelle version de Gtk+... je vais tester.

  5. #5
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Points : 1 633
    Points
    1 633
    Par défaut
    S'il essaie d'utiliser des libs dans /usr/local, ça veut dire que ce que tu as installé à la main perturbe les libs installées via apt-get. Un coup de make uninstalle ferait peut être du bien.

  6. #6
    Membre régulier Avatar de acryline
    Profil pro
    Inscrit en
    Août 2006
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 200
    Points : 101
    Points
    101
    Par défaut
    Ah lala ! effectivement, j'avais une vieille installation dans /usr/local, pourquoi je n'ai pas vu ça dans mon erreur !
    Merci beaucoup en une minute problème résolu ! J'ai vraiment été chercher midi à quatorze heure.

    Bon, restons positif, maintenant il y a un sujet qui parle de GtkGlExt

  7. #7
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Points : 1 633
    Points
    1 633
    Par défaut
    C'est plus très important maintenant, mais un autre truc bizarre dans les erreurs que tu avais, c'est que les 3 symboles non trouvés par le linker sont des macros. Hors, les macros sont normalement remplacées dans le code source par leur définition avant que le fichier source ne soit compilé, donc l'éditeur de lien ne devrait même pas avoir connaissance de ces symboles. SI un jour tu rencontres un pb d'édition de lien, ça peut aider à débgger

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. GTK et OPENGL avec gtkglarea
    Par Vincent|Dev dans le forum OpenGL
    Réponses: 1
    Dernier message: 09/02/2005, 13h33
  2. Probleme avec OpenGL
    Par Sh. dans le forum OpenGL
    Réponses: 3
    Dernier message: 04/11/2004, 12h48
  3. Boite de dialogue avec opengl
    Par inddzen dans le forum OpenGL
    Réponses: 3
    Dernier message: 23/04/2004, 20h25
  4. interface utilisateur avec OpenGL
    Par demis20 dans le forum OpenGL
    Réponses: 6
    Dernier message: 03/10/2002, 12h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo