Ich habe versucht, die OpenGL-Tutorials der des Indipendent QT-Tutorials durchzuackern. Solange ich nicht auf das Q_OBJECT Makro angwiesen bin, funktioniert auch alles super. Ich verwende Microsoft Visual Studio .NET 2003 und QT 3.3.3 Educational.
Hier mein Quellcode (die Implementierungen der Funktion paintGL() etc habe ich aus Platzgründen weggelassen. Wie bereits erwähnt, compiliert alles, was nicht auf das Q_OBJECT-Makro angwiesen ist. In den entsprechenden Beispielen habe ich die entsprechenden Stellen auskommentiert):
Datei: myopenglwidget.h
Code: Alles auswählen
#include <qgl.h>
#include <qtimer.h>
#pragma once
class MyOpenGLWidget : public QGLWidget {
Q_OBJECT
public:
MyOpenGLWidget(int timerInterval=0, QWidget *parent=0, char *name=0);
~MyOpenGLWidget(void);
protected:
virtual void initializeGL()=0;
virtual void paintGL()=0;
virtual void resizeGL(int height, int width)=0;
virtual void timeOut();
protected slots:
virtual void timeOutSlots();
private:
QTimer *timer;
};Code: Alles auswählen
#include ".\myopenglwidget.h"
#using <mscorlib.dll>
MyOpenGLWidget::~MyOpenGLWidget(void) {
}Code: Alles auswählen
#pragma once
#include <qapplication.h>
class Main {
public:
Main(void);
~Main(void);
};Code: Alles auswählen
#include ".\main.h"
#include ".\myopenglwidget.h"
#using <mscorlib.dll>
Main::Main(void) {
}
Main::~Main(void) {
}
int main (int argc, char **argv) {
QApplication application(argc, argv);
MyOpenGLWidget *glwidget = new MyOpenGLWidget();
application.setMainWidget(glwidget);
glwidget->show();
return application.exec();
}Code: Alles auswählen
HEADERS += Main.h MyOpenGLWidget.h
SOURCES += Main.cpp MyOpenGLWidget.cppCode: Alles auswählen
..> qmake -project -o QT_OPENGL.pro "QT=core gui" "TARGET=QT_OPENGL"
..> qmake -tp vc -o QT_OPENGL
..> qmake
..> nmakeNMAKE: fatal error U1077 'cl': Rueckgabe-Code '0x1'
Stop
Bin mit meinem Latein und Ressourcen nun am Ende angelangt, hat jemand vielleicht eine Hilfestellung oder eine Lösung für mich?