2015-01-19 13 views
8

Ho installato SDL2 usando Homebrew ma ora non so come assicurarmi che Xcode possa usarlo! Ho importato la libreria creata e l'ho aggiunta alla scheda Fasi di costruzione del mio progetto. Ma quando provo a costruire ottengo l'errore 'SDL2/SDL.h' non trovatoUtilizzo di homebrew SDL2 installato con Xcode

risposta

17

Per poter utilizzare SDL2 su Xcode è necessario impostare due cose (che sono necessari per SDL in generale):

  • dove trovare i file di intestazione (in modo che Clang può compilare con -Iheader/path)
  • dove trovare il .dylib per collegarla al progetto (dal momento che con birra non si dispone di un vero e proprio .framework)

Per conoscere i percorsi corretti dovresti invocare sdl2-config --cflags e sdl2-config --libs. Sul mio sistema questi producono:

:~jack$ /usr/local/bin/sdl2-config --cflags 
-I/usr/local/include/SDL2 -I/usr/X11R6/include -D_THREAD_SAFE 

:~jack$ /usr/local/bin/sdl2-config --libs 
-L/usr/local/lib -lSDL2 

Ora basta incollare il primo nella other C flags e l'altro in other linker flags campo del progetto e si è pronti ad andare.

Li possibile impostare nei campi corretti, che è Header Search Paths per -I e Library Search Path per -l ma il risultato sarà lo stesso.

+0

Mi dispiace, sono stato molto occupato, quindi non ho potuto rispondere! Grazie per la risposta alcune domande però quando aggiungo i percorsi ad altri flag C e ad altri flag linker posso accedere a SDL ma non è nidificato come '#include ' Come posso assicurarmi che funzioni? E anche quali percorsi dovrei inserire nei percorsi di ricerca dell'intestazione e nei percorsi di ricerca della libreria se volessi farlo nel modo corretto? Perché ho provato a farlo, ma non l'ho ancora fatto funzionare. –

+0

Oh e anche come posso farlo funzionare anche con SDL_ttf? Perché non riesco a trovarlo! L'annidamento di SDL2/SDL.h e l'utilizzo del campo corretto hanno funzionato anche se grazie! –

+0

Ok non importa, ho appena commesso qualche errore mi dispiace! Grazie per la risposta! –

Problemi correlati