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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 65
    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 émérite

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 717
    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
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 65
    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 émérite

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

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

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 65
    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 émérite

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 717
    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
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 65
    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

+ 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