2012-07-29 4 views
6

Ich habe die glew Lib so viele Male gebaut. Mein letzter Build entfernte die undefinierten Referenzen auf alle Shader-Funktionen wie glCreateShader(). Ich denke, dass dieser Build der richtige ist, weil ich herausgefunden habe, dass Code:Blocks Visual Studio 6.0-Projekte öffnen kann, so dass alles für mich angelegt war.Nicht definierte Verweisung auf `_imp__glewInit @ 0 '

Ich kann meine App ohne Aufruf glewInit() kompilieren, aber es ergibt sich ein SEGFAULT, wenn glCreateShader() aufgerufen wird. Was wird verursacht durch nicht initialisieren glew.

Ich brauche es einzuschalten, aber es mich nicht

Links lassen XD: mingw32, glew32, opengl32, glu32, glut32

IDE: Code :: Blocks

Compiler: MinGW32

Antwort

18

Sparen Sie sich eine Menge Ärger und fügen Sie einfach die glew.c zu Ihrem Projekt direkt hinzu. Ich verstehe nicht, warum die Leute so hart kämpfen, um sich extern damit zu verbinden. Die Lizenz ist freundlich und es ist nur eine Quelldatei. Erinnern Sie sich einfach an #define GLEW_STATIC.

+0

hmm Ich werde das versuchen – Kaliber64

+0

Danke !!!! Ich wünschte, ich hätte das nicht tun, aber was auch immer funktioniert! – Kaliber64

+1

Ich bin wirklich neugierig: warum nicht? Warum würde du versuchst lieber, es als externe Bibliothek zu verlinken? Wenn du eine DLL erstellst, fügt sie einfach eine andere Laufzeitabhängigkeit hinzu und macht eine statische Bibliothek ... nun, du fügst nur die eine Datei hinzu. Haha! – TheBuzzSaw

0

Link glew32 nach Libs, die es verwenden.

+0

Wenn ich es nach opengl32 verknüpfen wird es eine Reihe von undefinierten Verweise auf WGL-Funktionen erzeugen. Ich denke, ich habe alle Permutationen versucht XD – Kaliber64

+1

@DavidMaloy Vielleicht verwenden Sie statische Lib und nicht 'GLEW_STATIC' deklarieren? –

+0

Wo genau stelle ich das hin. Beim Erstellen der Lib? oder an der Spitze eines Headers? oder in den Compiler-Optionen. Ich habe es aber idk versucht, wenn ich die richtigen Plätze ausprobiert habe. – Kaliber64

Verwandte Themen