Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    [C++] GL/gl.h: No such file or directory

    Ciao a tutti.

    Ho installato GCC 4.7 e wxWidgets via MacPorts senza problemi e vorrei compilare un esempio scritto in C++ con wxWidgets fatto dal nostro professore di informatica sul mio MacBook con OS X 10.7.4 (Lion). Sull'iMac, appena installati i due programmi, sempre via MacPorts, sono riuscito a compilare. Sul MacBook invece non se ne parla... Ottengo sempre il solito errore:

    codice:
    g++-mp-4.7 -g `wx-config --cxxflags` `wx-config --libs gl,core,base` wx-exemple.cc -o gui
    wx-exemple.cc:6:20: fatal error: GL/gl.h: No such file or directory
    compilation terminated.
    Proprio non riesco a capire perché non trovi OpenGL. Questi sono gli include che ho nel mio file (niente programmazione modulare):

    codice:
    #include "wx/wxprec.h"
    #ifndef WX_PRECOMP
    #include "wx/wx.h"
    #endif
    #include "wx/glcanvas.h"
    #include "GL/gl.h" 
    #include "GL/glu.h"
    Proprio non capisco... Qualcuno saprebbe darmi qualche dritta?
    Grazie mille.
    K. L. Thompson
    You can't trust code that you did not totally create yourself.
    A. Bogk
    UNIX is user-friendly, it just chooses its friends.

  2. #2
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Il compilatore cerca i file nella directory GL della directory in cui c'è l'eseguibile.
    C'è differenza tra gli include tra doppi apici "" e tra parentesi angolari <>
    This code and information is provided "as is" without warranty of any kind, either expressed
    or implied, including but not limited to the implied warranties of merchantability and/or
    fitness for a particular purpose.

  3. #3
    Originariamente inviato da shodan
    Il compilatore cerca i file nella directory GL della directory in cui c'è l'eseguibile.
    C'è differenza tra gli include tra doppi apici "" e tra parentesi angolari <>
    Questo lo so. Ma anche wxWidgets non é nella directory in cui lavoro... È stato un assistente a dirmi di mettere quegli include...

    Ho provato con < > e da esattamente lo stesso identico errore. Sull'iMac aveva funzionato al primo colpo con gli include che ho fatto, ma ora non funziona più nemmeno li... =(
    K. L. Thompson
    You can't trust code that you did not totally create yourself.
    A. Bogk
    UNIX is user-friendly, it just chooses its friends.

  4. #4
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Originariamente inviato da RooccoXXI
    Questo lo so. Ma anche wxWidgets non é nella directory in cui lavoro... È stato un assistente a dirmi di mettere quegli include...
    Ciò non toglie che è li che il compilatore cerca le directory e relativi files.
    This code and information is provided "as is" without warranty of any kind, either expressed
    or implied, including but not limited to the implied warranties of merchantability and/or
    fitness for a particular purpose.

  5. #5
    Originariamente inviato da shodan
    Ciò non toglie che è li che il compilatore cerca le directory e relativi files.
    Ma allora com'é che su Ubuntu quegli include (esclusi "GL/gl.h" e "GL/glu.h", che non sono necessari) funzionano alla perfezione e tutto compila senza errori?

    Il problema é quando passo a Mac e aggiungo gli include per OpenGL... Quindi proprio non capisco. Inoltre le cosa più strana é che sull'iMac appena installati GCC 4.7 e wxWidgets ha compilato. Poi ho spento e riacceso e non funzionava più. Mentre sul Macbook non é mai funzionato... Come mai?

    Se metto < > mi da comunque lo stesso errore. Come posso risolverlo allora?
    K. L. Thompson
    You can't trust code that you did not totally create yourself.
    A. Bogk
    UNIX is user-friendly, it just chooses its friends.

  6. #6
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    E' probabile (almeno in VC++ funziona) che una volta che gli include files sono nell'include path (-I ) sia possibile accedere a tali files sia con <> sia con "".

    Posso solo suggerirti di controllare i settaggi riguardo gli include path del compilatore.
    Controlla che la directory GL (o meglio la sua root) sia in uno di quegli include path.
    This code and information is provided "as is" without warranty of any kind, either expressed
    or implied, including but not limited to the implied warranties of merchantability and/or
    fitness for a particular purpose.

  7. #7
    Originariamente inviato da shodan
    E' probabile (almeno in VC++ funziona) che una volta che gli include files sono nell'include path (-I ) sia possibile accedere a tali files sia con <> sia con "".

    Posso solo suggerirti di controllare i settaggi riguardo gli include path del compilatore.
    Controlla che la directory GL (o meglio la sua root) sia in uno di quegli include path.
    Forse é per questo che la prima volta, subito dopo l'installazione, ha funzionato. La path é stata modificata ma non in modo permanente.

    Sai dove si trovano le cartelle GL su Mac OS 10.7 e come faccio a modificare la path di GCC 4.7?
    K. L. Thompson
    You can't trust code that you did not totally create yourself.
    A. Bogk
    UNIX is user-friendly, it just chooses its friends.

  8. #8
    Ho trovato il seguente file:

    /System/Library/Frameworks/OpenGL.framework/Versions/A/Headers/gl.h

    È quello giusto? È questa la cartella da aggiungere alla path del compilatore? Come faccio ad eseguire tale operazione?

    Grazie,
    R.
    K. L. Thompson
    You can't trust code that you did not totally create yourself.
    A. Bogk
    UNIX is user-friendly, it just chooses its friends.

  9. #9
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Non sono un tuttologo, non so se sia la cartella giusta. Comunque nel Makefile è possibile indicare (tramite la direttiva -I) degli include path aggiuntivi.
    Però qui si va nella configurazione del compilatore e io non uso ne g++ nel Mac.
    This code and information is provided "as is" without warranty of any kind, either expressed
    or implied, including but not limited to the implied warranties of merchantability and/or
    fitness for a particular purpose.

  10. #10
    Originariamente inviato da shodan
    Non sono un tuttologo, non so se sia la cartella giusta. Comunque nel Makefile è possibile indicare (tramite la direttiva -I) degli include path aggiuntivi.
    Però qui si va nella configurazione del compilatore e io non uso ne g++ nel Mac.
    Infatti non so che comando aggiuntivo di compilazione dare... =(
    K. L. Thompson
    You can't trust code that you did not totally create yourself.
    A. Bogk
    UNIX is user-friendly, it just chooses its friends.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.