2012-07-29 15 views
6

Ho costruito la libreria glew tante volte. La mia ultima build ha rimosso i riferimenti indefiniti a tutte le funzioni dello shader come glCreateShader(). Penso che questa build sia la giusta causa perché ho scoperto che Code:Blocks può aprire i progetti di Visual Studio 6.0, quindi aveva tutto per me.Riferimento non definito a `_imp__glewInit @ 0 '

Posso compilare la mia app senza chiamare glewInit() ma risulta in un SEGFAULT corretto quando viene chiamato glCreateShader(). Che è causato da non inizializzare Glew.

ho bisogno di accenderlo ma non lo lascerà XD

link: mingw32, glew32, opengl32, glu32, glut32

IDE: Code :: Blocks

Compiler: mingw32

risposta

18

Risparmia un sacco di problemi e aggiungi direttamente lo glew.c al tuo progetto. Non capisco perché la gente lotta così duramente per collegarsi esternamente. La licenza è amichevole, ed è solo un file sorgente. Ricorda semplicemente di #define GLEW_STATIC.

+0

hmm proverò che – Kaliber64

+0

grazie !!!! vorrei non doverlo fare ma qualunque cosa funzioni! – Kaliber64

+1

Sono sinceramente curioso: perché no? preferisci provare a collegarlo come una libreria esterna? Creare una DLL aggiunge solo un'altra dipendenza run-time e creare una libreria statica ... beh, basta aggiungere l'unico file. Haha! – TheBuzzSaw

0

Link glew32 dopo librerie che lo usano.

+0

Se lo linko dopo opengl32 produrrà un gruppo di riferimenti indefiniti alle funzioni wgl. Penso di aver provato tutte le permutazioni XD – Kaliber64

+1

@DavidMaloy Forse stai usando la lib statica e non dichiari 'GLEW_STATIC'? –

+0

Dove esattamente lo metto. Quando fai la lib? o nella parte superiore di un'intestazione? o nelle opzioni del compilatore. Ho provato ma idk se ho provato i posti corretti. – Kaliber64

Problemi correlati