Pourquoi ne peuvent-C++ trouver GLM-têtes?
Je n'ai pas les autorisations pour mettre GLM dans usr/local/include ou usr/include, mais j'ai besoin d'utiliser GLM pour openGL. Le code (je ne suis pas en mesure de changer) recherche pour GLM comme ceci:
#include <glm/glm.hpp>
#include <glm/gtc/matrix_transform.hpp>
#include <glm/gtc/type_ptr.hpp>
le dossier glm est dans le même répertoire que mon main.cpp lorsque ce code est de. Je pense que ça ne fonctionne pas parce qu'il est à la recherche pour les glm dans usr/include où construit dans les en-têtes sont (im en utilisant redhat linux)
Comment puis-je empêcher cela de se produire, puisque je ne peux pas lancer:
g++ main.cpp -lGL -lglut -lGLEW
sans ces erreurs:
main.cpp:46:23: error: glm/glm.hpp: No such file or directory
main.cpp:47:40: error: glm/gtc/matrix_transform.hpp: No such file or directory
main.cpp:48:32: error: glm/gtc/type_ptr.hpp: No such file or directory
main.cpp:62: error: ‘glm’ has not been declared
main.cpp:62: error: expected constructor, destructor, or type conversion before ‘cameraMatrix’
main.cpp: In function ‘int setShaderData(const unsigned int&)’:
main.cpp:102: error: ‘glm’ has not been declared
main.cpp:102: error: expected ‘;’ before ‘projection’
main.cpp:105: error: ‘glm’ has not been declared
main.cpp:105: error: ‘projection’ was not declared in this scope
main.cpp:109: error: ‘glm’ has not been declared
main.cpp:109: error: expected ‘;’ before ‘modelview’
main.cpp: In function ‘void render()’:
main.cpp:187: error: ‘cameraMatrix’ was not declared in this scope
main.cpp:187: error: ‘glm’ has not been declared
main.cpp:200: error: ‘glm’ has not been declared
OriginalL'auteur Barney Chambers | 2015-03-11
Vous devez vous connecter pour publier un commentaire.
GLM ne fait pas partie de l'OpenGL. C'est un C++ bibliothèque de mathématiques qui a beaucoup de la même syntaxe que GLSL. Pour l'utiliser, vous devez le télécharger à partir de ici ou l'installer à l'aide de votre gestionnaire de paquets (bien que si vous n'avez pas les droits d'administration sur cette machine, alors vous ne serez pas en mesure de le faire).
Une fois que vous l'avez, vous devez l'ajouter à votre chemin d'accès:
Bien que si vous l'installez avec un gestionnaire de paquet, il sera probablement jusqu'à la fin de votre système de chemin de.
Essayez
-I.
ou-I./headers
Merci Amadeus, qui a travaillé. Toujours avoir une erreur avec ma openGL, mais c'est d'une grande aide
OriginalL'auteur Jherico
Ma réponse n'est pas vraiment liée à l'auteur de la question, mais je suis juste en laissant ici pour ceux, qui viennent ici depuis ubuntu avec un paquet manquant
OriginalL'auteur SerCe