Compiler le programme OpenGL (GL / gl.h manquant)

36

Je suis un noob complet de Linux / Ubuntu, alors je m'excuse pour les parties idiotes de cette question ou celles qui suivent.

J'essaie d'obtenir un programme que le groupe de ma classe de génie logiciel a écrit sur mon ordinateur personnel. À l'école, nous avons Linux, et il compilera et fonctionnera bien là-bas. J'ai téléchargé VMWare, installé Ubuntu sur une machine virtuelle et j'essaie maintenant d'ouvrir mon programme.

Cependant, chaque fois que j'essaie de lancer mon fichier de création, je reçois une erreur indiquant

gcc -I../include -pthread -O1 -c rain.c
In file included from rain.c:19:0:
../include/GL/glfw.h:176:21: fatal error: GL/gl.h: No such file or directory
compilation terminated.
make: *** [rain.o] Error 1

Quelqu'un pourrait-il savoir pourquoi il ne peut pas trouver ce fichier, quand il le peut sur les ordinateurs de mon école? Et que devrais-je faire pour le télécharger ou le mettre au bon endroit?

    
posée Seldom 11.06.2013 - 06:40
la source

3 réponses

66

Je suppose que vous n’avez pas ce que les paquetages dev fournissent gl.h. apt-file est l'outil de ligne de commande à utiliser.

D'abord, assurez-vous qu'il est à jour:

apt-file update

Maintenant, vous pouvez écrire une recherche pour répondre "quel paquet fournit le fichier gl.h?"

apt-file search "gl.h"

Je n'ai pas encore de boîte Ubuntu pour vérifier, mais je suppose que le résultat sera quelque chose comme mesa-dev ou opengl-dev.

Une fois que vous savez quel paquet fournit "gl.h", (supposons que le résultat de apt-file est "libmesa-dev"), installez-le:

apt-get install libmesa-dev

Plus d’informations sur la famille de commandes apt: lien

    
réponse donnée djeikyb 11.06.2013 - 08:16
la source
21

Pour GL/gl.h use:

sudo apt install mesa-common-dev

Vous pouvez également trouver ces informations utiles, par exemple, GL/glu.h :

sudo apt install libglu1-mesa-dev freeglut3-dev
    
réponse donnée Richard 01.01.2017 - 21:38
la source
1

Vous pouvez également créer glproto ( lien ), libdrm (link ), puis mesa ( lien ) de la source. Bien que de nombreux autres packages puissent contenir ce fichier d'en-tête, il est important d'aller à la source. Cela permettra de réduire l’empreinte mémoire de vos installations et de vous assurer que vous disposez de la version la plus récente et / ou la plus performante.

    
réponse donnée Adam Erickson 03.08.2016 - 15:46
la source

Lire d'autres questions sur les étiquettes