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

wxWidgets Discussion :

Intégration d'OpenGL dans wxWidget - la deuxième


Sujet :

wxWidgets

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 65
    Points : 36
    Points
    36
    Par défaut Intégration d'OpenGL dans wxWidget - la deuxième
    Décidément, on dirait qu'aujourd'hui openGl ne veut pas de moi. Ou serait-ce wxWidget, qui ne veut pas d'openGL ?
    Peut-importe.

    Après avoir modifié la variable wxUSE_GLCANVAS à 1,
    rajouté les 2 libs opengl32.lib & glu32.lib,
    créé ma classe dérivant de wxGLcanvas à la manière de http://www.developpez.net/forums/sho...d.php?t=277866 ,
    et instancié mon objet glCanvas,
    la génération du code fonctionne ! ...mais il crashe à l'édition des liens. ()

    Mes erreurs de link ressemblent à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    mainApp.obj : error LNK2001: symbole externe non résolu "protected: virtual class wxEventHashTable & __thiscall wxGLCanvas::GetEventHashTable(void)const " (?GetEventHashTable@wxGLCanvas@@MBEAAVwxEventHashTable@@XZ)
    mainApp.obj : error LNK2001: symbole externe non résolu "protected: virtual struct wxEventTable const * __thiscall wxGLCanvas::GetEventTable(void)const " (?GetEventTable@wxGLCanvas@@MBEPBUwxEventTable@@XZ)
    mainApp.obj : error LNK2001: symbole externe non résolu "public: virtual class wxClassInfo * __thiscall wxGLCanvas::GetClassInfo(void)const " (?GetClassInfo@wxGLCanvas@@UBEPAVwxClassInfo@@XZ)
    ...
    Y en a 10 en tout, je vous fait grâce des 7 autres...

    Pour info, j'ai wxWidget 2.8 et je code sous VC++2007.

    Mais que faaaaiiiire ?

    Merci d'avance.

    Martin

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    717
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 717
    Points : 858
    Points
    858
    Par défaut
    Après une modification du fichier setup.h, il faut recompiler wxWidgets pour que la modification soit prise en compte.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 65
    Points : 36
    Points
    36
    Par défaut
    Merci, mais.....c'est pourtant ce que j'ai fait, sans succès !
    Bon je vais tenter de nettoyer puis tout recompiler wxWidget.

  4. #4
    Membre éclairé

    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    717
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 717
    Points : 858
    Points
    858
    Par défaut
    Ah, alors peut-être n'as tu pas ajouté la nouvelle lib "wxmsw28_gl.lib" ainsi créée ?

  5. #5
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 65
    Points : 36
    Points
    36
    Par défaut
    Youpi !
    J'ai totalement recompilé wxWidget et je n'ai plus qu'une erreur !
    Génial !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Tactile_map error LNK2019: symbole externe non résolu "public: virtual __thiscall GL_Window::~GL_Window(void)" (??1GL_Window@@UAE@XZ) référencé dans la fonction "public: virtual void * __thiscall GL_Window::`scalar deleting destructor'(unsigned int)" (??_GGL_Window@@UAEPAXI@Z)
    Excusez moi, je pète un peu les plombs

    Edit : Oui, j'avais bien rajouté la wxmsw28_gl.lib

    Une idée ?

  6. #6
    Membre éclairé

    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    717
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 717
    Points : 858
    Points
    858
    Par défaut
    Courage, t'y est presque

    GL_Window c'est dans ton code, non ?
    Tu as déclaré le destructeur sans le définir, peut-être.

  7. #7
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 65
    Points : 36
    Points
    36
    Par défaut
    ................................................................................................................................................


    Comment perdre une bonne partie de l'après midi... sur une erreur de débutant.

    Dis moi, comment as tu deviné que j'avais déclaré le destructeur sans le définir ? Soit tu es médium, soit ça t'es déjà arrivé, non ?

    En tout cas pour ceux qui ont des erreurs de link après avoir intégré openGl sur wxWidget, je récapitule :
    - Placer la variable wxUSE_GLCANVAS à 1 dans le fichier Setup.h de wxWidget
    - Recompiler Intégralement wxWidget
    - Intégrer la librairie wxmsw28d_gl.lib dans son projet
    - définir les destructeurs que l'on a déclarés !!

    Merci, à bientôt

    Martin

  8. #8
    Membre éclairé

    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    717
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 717
    Points : 858
    Points
    858
    Par défaut
    Citation Envoyé par martt_1er
    Dis moi, comment as tu deviné que j'avais déclaré le destructeur sans le définir ? Soit tu es médium, soit ça t'es déjà arrivé, non ?
    Ça s'appelle l'expérience

    Plus sérieusement, c'était facile ici au vu du message d'erreur car si aucun destructeur n'est déclaré, le compilateur en fourni automatique un.

  9. #9
    Membre du Club
    Inscrit en
    Mars 2005
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 52
    Points : 46
    Points
    46
    Par défaut
    bonjour,

    j'ai lu attentivement cette discussion. j'ai des problemes de link avec opengl. quand j'utilise une fonction il me met des undefined de la fonction opengl utilisé undifined wxglcanvas::.... ,mais en voulant partir de zero, et tout reconfigurer comme l'a recapitulé martt_1er, je me suis rendu compte que je n'ai pas wxmsw28d_gl.lib . je compile la version wxwidget-2.8.3 en suivant ce tuto deja definit dans une autre discussion sur ce site

    j'utilise le compilateur GNU GCC avec codeblock et nightly build

    apres compilation du wxwidget, dans son dossier lib\gcc_lib, il y a des fichiers ".a" mais aucun avec une terminaison _gl

    je rappel que le fichier setup.h se trouve en plusieurs endroit, et selon le tuto, j'ai configurer le setup.h se trouvant dans C:\wxWidgets-2.8.3\include\wx\msw ou j'ai mis le wxUSE_GLCANVAS à 1

    j'utilise le compilateur GNU GCC

    Voila toute les infos que je peux donner.

    j'ai bien configurer ou pas en suivant UNIQUEMENT le tuto ????

    sinon Comment dois je m'y prendre???


    merci de votre reponse

  10. #10
    Membre du Club
    Inscrit en
    Mars 2005
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 52
    Points : 46
    Points
    46
    Par défaut
    je crois que je suis bloqué, j'ai recommencé plusieur la recompilation de wxwidgets, en plus ca prend du temps.

    Pas d'idée??

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

Discussions similaires

  1. Intégration d'une fenêtre opengl dans un winform C#
    Par vinch999 dans le forum OpenGL
    Réponses: 3
    Dernier message: 16/12/2010, 11h09
  2. Intégration d'OpenGL dans une interface Qt
    Par Architekth dans le forum Qt
    Réponses: 5
    Dernier message: 21/09/2010, 16h03
  3. Réponses: 10
    Dernier message: 10/02/2009, 09h25
  4. Intégration d'OpenGL dans wxWidget
    Par martt_1er dans le forum wxWidgets
    Réponses: 9
    Dernier message: 15/05/2007, 13h59

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