SoQt mit Qt verwenden

Alles rund um die Programmierung mit Qt
Antworten
GwarDrazul
Beiträge: 23
Registriert: 5. Juni 2006 18:56

SoQt mit Qt verwenden

Beitrag von GwarDrazul »

Hallo zusammen,

Ich möchte gerne eine 3D Szene visualisieren. Hierfür würde ich gerne Coin (www.coin3d.org) und die dafür existieren Qt-Bindings (SoQt) verwenden.

Ich schaffe es nicht, SoQt zusammen mit der QtGui Bibliothek zu verwenden. Leider habe ich bislang nichts entsprechendes im Internet gefunden (oder es war nur wenig hilfreich).

Wenn ich ausschließlich SoQt verwende, wird das Projekt mit folgendem .pro-File einwandfrei kompiliert und kann auch ausgeführt werden:

Code: Alles auswählen

TEMPLATE = app
TARGET += 
DEPENDPATH += .
INCLUDEPATH += . /usr/include/Coin2 $(QTDIR)/include $(QTDIR)/include/Qt /usr/local/Trolltech/Qt-4.1.3/include/QtCore /usr/local/Trolltech/Qt-4.1.3/include/QtGui

CONFIG += qt warn_on release

# Input
HEADERS += rcvreader.h
SOURCES += rcvreader.cpp main.cpp 
LIBS    += -L/usr/X11R6/lib  -lXt -lXi -lXext -lX11 -lSimVoleon -lSoQt
QT      -= core
QT      -= gui
Wenn ich die letzte Zeile weglasse (es gilt also QT +=gui) kann ich ebenfalls einwandfrei kompilieren, es gibt aber einen Speicherzugriffsfehler beim Ausführen [es liegt nicht an QT -= core. Das habe ich bereits ausprobiert]

Wenn ich SoQt nun mit Qt verwenden möchte, brauche ich aber die Qt GUI, damit überhaupt kompiliert wird , sonst meckert der Linker z.B. mit QMainWindow::QMainWindow(QWidget*, QFlags<Qt::WindowType>. Wenn ich im Projectfile aber sage, dass die GUI mitgelinkt werden soll, tritt beim Ausführen o.g. Speicherzugriffsfehler auf.
Ich verwende Qt-4.1.3, Coin 2.4.5-1, SoQt 1.3, SIMVoleon 2.0.1.3 auf einem Linux System (Fedora Core 5, 2.6er Kernel).

Weiss jemand, wie SoQt zusammen mit der QtGui Bibliothek verwendet werden kann?

Gruß,
Eric
GwarDrazul
Beiträge: 23
Registriert: 5. Juni 2006 18:56

Beitrag von GwarDrazul »

Hallo zusammen,

mittlerweile habe ich herausgefunden, dass ich SoQt mit Qt 3.3. wunderbar zusammen verwenden kann. Eigentlich würde ich aber gerne Qt 4 verwenden. Falls jemand weiß, ob das überhaupt möglich ist würde ich mich über eine Antwort freuen.

Viele Grüße,
Eric
Antworten