Je suis un noob complet sous Linux/Ubuntu, alors je m'excuse pour toute partie stupide de cette question ou pour les suivantes.
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, qui compilera et fonctionnera bien là-bas. J'ai téléchargé VMWare, installé Ubuntu sur une machine virtuelle et j'essaie maintenant de faire ouvrir mon programme.
Cependant, chaque fois que j’essaie d’exécuter mon fichier make, une erreur s’affiche:
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
Est-ce que quelqu'un pourrait savoir pourquoi il ne peut pas trouver ce fichier, alors qu'il le peut sur les ordinateurs de mon école? Et que devrais-je faire pour le télécharger ou le placer au bon endroit?
J'imagine que vous n'avez pas les paquets de développement fournis par gl.h. apt-file
est l'outil de ligne de commande à utiliser.
Tout 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 de case ubuntu à vérifier pour l'instant, 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 soit "libmesa-dev"), installez-le:
apt-get install libmesa-dev
Plus d'informations sur la famille de commandes apt: https://help.ubuntu.com/community/AptGet/Howto
Pour GL/gl.h
, utilisez:
Sudo apt install mesa-common-dev
Vous pouvez également trouver ces informations utiles, par exemple pour GL/glu.h
:
Sudo apt install libglu1-mesa-dev freeglut3-dev
Vous pouvez également construire glproto ( lien ), libdrm ( lien ), puis mesa ( lien ) à partir du code source. Bien que de nombreux autres packages puissent contenir ce fichier d’en-tête, il est important d’aller à la source. Cela réduira l'encombrement de la mémoire de vos installations et garantira que vous disposez de la version la plus récente et/ou la plus performante.