Hallo,
ich hab ein Problem mit dem Einbinden der glew-Bibliothek für die OpenGL-Extensions mit dem Qt-Creator unter XP und Win7, und zwar krieg ich beim Kompilieren immer wieder die Fehlermeldung "undefined reference to' _imp__glew<funktion>' ", obwohl ich in der Projekt-Datei die lib mit
LIBS += glew32.lib
eingebunden hab, ebenso wie den Header "glew.h"
Die Dateien selbst befinden sich alle im Projektordner, der Compiler sollte sie also alle finden, inklusive der dll und lib .
Das ironische ist, dass es bei zwei Kollegen von mir ohne Probleme kompiliert, was ich nicht verstehe.
Muss man am Compiler irgendwie was einstellen? Denn eigentlich arbeitet der MinGW-Compiler ja nicht mit .lib-Dateien, oder?
Vielen Dank im voraus, falls mir einer helfen kann.
Grüsse
Qt und glew32.lib - Probleme beim Linken
-
MrGoodBytes
- Beiträge: 2
- Registriert: 4. Juni 2010 19:58
Die Endung .lib deutet stark daraufhin, dass das eine statische library von Visual Studio ist. Wenn sie von gcc wäre, würde sie ja auf .a enden.
Wenn da nur dumme C-Funktionen drin sind, dürfte das keinen Unterschied machen, aber eine C++ Library kannst du nur mit dem Compiler benutzen, mit dem sie auch erzeugt wurde, wegen name-mangling, calling conventions, usf.
Kann es sein, dass deine Kollegen mit msvc kompilieren?
Wenn da nur dumme C-Funktionen drin sind, dürfte das keinen Unterschied machen, aber eine C++ Library kannst du nur mit dem Compiler benutzen, mit dem sie auch erzeugt wurde, wegen name-mangling, calling conventions, usf.
Kann es sein, dass deine Kollegen mit msvc kompilieren?
-
MrGoodBytes
- Beiträge: 2
- Registriert: 4. Juni 2010 19:58
es stimmt, der gcc-Compiler kann nur Bibliotheken benutzen, die mit .a enden, hab ich jetzt mittlerweile herausgefunden. Notgedrungenermassen müsste ich den Sourcecode von glew mit gcc kompilieren um eine statische Bibliothek zu erhalten, allerdings verlier ich den überblick was ich alles an dateien brauche, wenn ich mir den sourcecode anschaue -> http://glew.sourceforge.net/index.html
meine kollegen hatten MSVC 2008 (express edition oder so, glaub ich), installiert und haben dann an den Projekteinstellungen "rumgefummelt", damit der auch Qt-Anwendungen kompilieren kann (wenn ich mich recht entsinne), aber danach sind wir alle einfachheitshalber dazu übergegangen, den Qt-Creator zu benutzen. Aber ich kann mir nicht vorstellen, dass das auch den compiler vom Qt-Creator beeinflusst hat, oder?
meine kollegen hatten MSVC 2008 (express edition oder so, glaub ich), installiert und haben dann an den Projekteinstellungen "rumgefummelt", damit der auch Qt-Anwendungen kompilieren kann (wenn ich mich recht entsinne), aber danach sind wir alle einfachheitshalber dazu übergegangen, den Qt-Creator zu benutzen. Aber ich kann mir nicht vorstellen, dass das auch den compiler vom Qt-Creator beeinflusst hat, oder?