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

Qt Discussion :

[Qt4] Pb compilation : Undefined symbols


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de guiyomh
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 328
    Par défaut [Qt4] Pb compilation : Undefined symbols
    salut, j'ai un problème lors de la compilation mais je comprends pas ou,
    pourriez vous m'aider, voici le message erreur :
    Citation Envoyé par compilation
    g++ -c -pipe -g -Wall -W -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/local/Trolltech/Qt-4.4.1/mkspecs/macx-g++ -I. -I/usr/local/Trolltech/Qt-4.4.1/lib/QtCore.framework/Headers -I/usr/local/Trolltech/Qt-4.4.1/include/QtCore -I/usr/local/Trolltech/Qt-4.4.1/include/QtCore -I/usr/local/Trolltech/Qt-4.4.1/lib/QtGui.framework/Headers -I/usr/local/Trolltech/Qt-4.4.1/include/QtGui -I/usr/local/Trolltech/Qt-4.4.1/include/QtGui -I/usr/local/Trolltech/Qt-4.4.1/include -I. -Isrc/coremanager -Isrc/mainInterface -Ibuild/moc -Ibuild/ui -F/usr/local/Trolltech/Qt-4.4.1/lib -o build/o/unix/GinnCore.o src/coremanager/GinnCore.cpp
    g++ -headerpad_max_install_names -o bin/Ginn++.app/Contents/MacOS/Ginn++.app build/o/unix/main.o build/o/unix/GinnCore.o build/o/unix/UIMain.o build/o/unix/moc_GinnCore.o build/o/unix/moc_UIMain.o build/o/unix/qrc_resources.o -F/usr/local/Trolltech/Qt-4.4.1/lib -L/usr/local/Trolltech/Qt-4.4.1/lib -framework QtGui -L/usr/local/Trolltech/Qt-4.4.1/lib -F/usr/local/Trolltech/Qt-4.4.1/lib -framework Carbon -framework AppKit -framework QtCore -lz -lm -framework ApplicationServices
    Undefined symbols:
    "GinnCore::mInstances", referenced from:
    __ZN8GinnCore10mInstancesE$non_lazy_ptr in GinnCore.o
    ld: symbol(s) not found
    collect2: ld returned 1 exit status
    make: *** [bin/Ginn++.app/Contents/MacOS/Ginn++.app] Error 1
    et voici la la class GinnCore qui semble posé problème.
    L'entete :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    #ifndef GINNCORE_H
    #define GINNCORE_H
     
    #include <QObject>
    #include <QHash>
     
    class UIMain;
     
    class GinnCore : public QObject
    {
        Q_OBJECT
     
        public:
            static void init();
            static UIMain* mainWindow();
     
        private:
            static QHash<const QMetaObject*, QObject*> mInstances;
    };
     
    #endif // GINNCORE_H
    et le corp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    #include "GinnCore.h"
    #include "../maininterface/UIMain.h"
     
    void GinnCore::init()
    {
        mainWindow()->initGui();
    }
     
    UIMain* GinnCore::mainWindow()
    {
    	if ( !mInstances.contains( &UIMain::staticMetaObject ) )
    		mInstances[&UIMain::staticMetaObject] = new UIMain();
    	return qobject_cast<UIMain*>( mInstances[&UIMain::staticMetaObject] );
    }

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Salut
    as tu appliqué moc sur ton .h et ajouté le fichier généré à la compilation?

  3. #3
    Membre éclairé Avatar de guiyomh
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 328
    Par défaut
    Euh peux tu développer, je débute avec QT, et je comprends pas ce dont tu me parle !

    Je sais pas si ça peux répondre à ta question, mais voici mon .pro
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    ######################################################################
    # Automatically generated by qmake (2.01a) ven. sept. 19 12:50:00 2008
    ######################################################################
     
    AUTHOR  = Guillaume Camus
    QT = gui core
    LANGUAGE = C++
    TEMPLATE = app
     
    win32:TARGET = Ginn++.exe
    win32:OBJECTS_DIR   += build/o/win32
     
    unix:TARGET = Ginn++_x11
    unix:OBJECTS_DIR    += build/o/unix
     
    mac:TARGET  = Ginn++.app
    mac:OBJECTS_DIR += build/o/mac
     
    RCC_DIR = build/rcc
    UI_DIR  = build/ui
    MOC_DIR = build/moc
     
    DESTDIR = bin
    LICENSE = GPL
    DEPENDPATH += . \
                src \
                src/coremanager \
                src/mainInterface
     
    INCLUDEPATH += . \
                src/coremanager \
                src/mainInterface
     
    RESOURCES = src/resources/resources.qrc
     
    # Input
    HEADERS += src/GinnStudio.h \
               src/coremanager/GinnCore.h \
               src/mainInterface/UIMain.h 
     
    SOURCES += src/main.cpp \
               src/coremanager/GinnCore.cpp \
               src/mainInterface/UIMain.cpp

  4. #4
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    ha non, c'est autre chose.

    Tu as definie des fonction est des membre static dans le .f.
    Seulement tu ne les as pas définie dans le .cpp
    http://cpp.developpez.com/faq/cpp/?p..._membre_static

    Par contre pourquoi faire une class où tout est static?

  5. #5
    Membre éclairé Avatar de guiyomh
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 328
    Par défaut
    En faite je me base sur le code source de monkey Studio, que je décortique pas à pas, pour essayer de faire mon propre système de plugin sur mon application.

    Et dans monkeyStudio c'est en static .

    et merci pour l'aide ça ma débloquer.
    il fallait juste ajouté ceci dans le cpp.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    QHash<const QMetaObject*, QObject*> GinnCore::mInstances;

  6. #6
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035

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

Discussions similaires

  1. Réponses: 14
    Dernier message: 28/06/2011, 15h26
  2. [E2451] Undefined symbol 'att_nombre'
    Par kaizer dans le forum C++
    Réponses: 9
    Dernier message: 22/10/2006, 13h53
  3. problème lors de la compilation : Unsatisfied symbols
    Par la schtroumpfette dans le forum C
    Réponses: 6
    Dernier message: 29/12/2005, 09h52
  4. probleme a la compilation:Undefined symbols
    Par djobanaille dans le forum C++
    Réponses: 3
    Dernier message: 07/12/2005, 15h33
  5. Undefined symbol
    Par tchoimars dans le forum C
    Réponses: 2
    Dernier message: 02/12/2005, 17h28

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