Anzeige:
Ergebnis 1 bis 4 von 4

Thema: Qt und das Erzeugen der Mocs...

  1. #1
    Registrierter Benutzer Avatar von Sym
    Registriert seit
    05.09.2002
    Ort
    Bremen
    Beiträge
    278

    Qt und das Erzeugen der Mocs...

    Hallo,

    ich habe ein Problem, wenn ich das Macro Q_Object in einer neuen Klasse einbinde.

    So wie es scheint, werden die Mocs nicht erzeugt. Es ist länger her, dass ich mit Qt entwickelt habe. Mein altes Projekt kann ich kompilieren und starten.

    Ich habe mittels qmake -project ein .pro-File erzeugt. Dann ein MSVC2005-Project mittels qmake -tp vc. So klappte das vor einigen Monaten eigentlich immer.

    Meine Problemklasse:
    Code:
    #include <QObject>
    
    class Tester : public QObject
    {
      Q_OBJECT
    
      public:
        Tester();
        virtual ~Tester(void);
    
      public slots:
        void selectionChanged(void);
    
    };
    Mein .pro-File
    Code:
    TEMPLATE = app
    TARGET += 
    DEPENDPATH += .
    INCLUDEPATH += .
    
    # Input
    HEADERS += Tester.h
    SOURCES += main.cpp Tester.cpp
    Der Fehler:
    Code:
    Tester.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual struct QMetaObject const * __thiscall Tester::metaObject(void)const " (?metaObject@Tester@@UBEPBUQMetaObject@@XZ)".
    Tester.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void * __thiscall Tester::qt_metacast(char const *)" (?qt_metacast@Tester@@UAEPAXPBD@Z)".
    Tester.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual int __thiscall Tester::qt_metacall(enum QMetaObject::Call,int,void * *)" (?qt_metacall@Tester@@UAEHW4Call@QMetaObject@@HPAPAX@Z)".
    Kommentiere ich das Makro aus, kompiliert die Klasse. Kann mir vielleicht jemand einen Tip geben?
    Denk mal drüber nach...

    Lars

    ACHTUNG: ersetze Linux durch GNU/Linux an den entsprechenden Stellen
    www.macuser.de, MSVC2005 Express und Qt, Qt/Mac installieren

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Du mußt vermutlich nur das VS Project File neu erzeugen, zumindest reicht es im Falle von Makefiles immer diese neu aus dem .pro zu erstellen.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer Avatar von Sym
    Registriert seit
    05.09.2002
    Ort
    Bremen
    Beiträge
    278
    Ja, genau das dachte ich auch. Ich habe sogar bis auf die Sourcen alles entfernt und dann qmake -project und qmake -tp vc aufgerufen. Ich meine mich zu erinnern, dass das vor ein paar Monaten gereicht hat. Doch der Fehler ist immer noch da.
    Geändert von Sym (03-10-2006 um 22:46 Uhr)
    Denk mal drüber nach...

    Lars

    ACHTUNG: ersetze Linux durch GNU/Linux an den entsprechenden Stellen
    www.macuser.de, MSVC2005 Express und Qt, Qt/Mac installieren

  4. #4
    Registrierter Benutzer Avatar von Sym
    Registriert seit
    05.09.2002
    Ort
    Bremen
    Beiträge
    278
    Problem gelöst:

    Keine Ahnung warum. Ich habe die Tester-Dateien gelöscht und neu angelegt. Danach klappte es dann.
    Denk mal drüber nach...

    Lars

    ACHTUNG: ersetze Linux durch GNU/Linux an den entsprechenden Stellen
    www.macuser.de, MSVC2005 Express und Qt, Qt/Mac installieren

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •