我有一个包含以下导入的文件:
// Include standard headers
#include <stdio.h>
#include <stdlib.h>
#include <vector>
// Include GLEW
#include <GL/glew.h>
// Include GLFW
#include <glfw3.h>
GLFWwindow* window;
// Include GLM
#include <glm/glm.hpp>
#include <glm/gtc/matrix_transform.hpp>
#include <glm/gtc/quaternion.hpp>
#include <glm/gtx/quaternion.hpp>
#include <glm/gtx/euler_angles.hpp>
#include <glm/gtx/norm.hpp>
using namespace glm;
// Include AntTweakBar
#include <AntTweakBar.h>
#include <common/shader.hpp>
#include <common/texture.hpp>
#include <common/controls.hpp>
#include <common/objloader.hpp>
#include <common/vboindexer.hpp>
#include <common/quaternion_utils.hpp> // See quaternion_utils.cpp for RotationBetweenVectors, LookAt and RotateTowards
然而,当我尝试用
编译它时g++ -lglut -lGLU -lGL rotatetest.cpp -o hello.o
我收到以下错误:
rotatetest.cpp:7:23: error: GLUT/glew.h: No such file or directory
rotatetest.cpp:10:19: error: glfw3.h: No such file or directory
rotatetest.cpp:14:23: error: glm/glm.hpp: No such file or directory
rotatetest.cpp:15:40: error: glm/gtc/matrix_transform.hpp: No such file or directory
rotatetest.cpp:16:34: error: glm/gtc/quaternion.hpp: No such file or directory
rotatetest.cpp:17:34: error: glm/gtx/quaternion.hpp: No such file or directory
rotatetest.cpp:18:36: error: glm/gtx/euler_angles.hpp: No such file or directory
rotatetest.cpp:19:28: error: glm/gtx/norm.hpp: No such file or directory
rotatetest.cpp:23:25: error: AntTweakBar.h: No such file or directory
我知道这段代码是有效的,因为a)它来自一个教程,b)我可以在它是XCode项目的一部分时成功运行它,而不是作为一个独立的文件。
我使用的是Mac OS X 10.8.5。任何人都可以向我建议我如何编译它?
答案 0 :(得分:0)
包含&lt;&gt;文件中的指令要求系统包含目录中与OpenGL相关的标头。命令行上的g ++可能正在使用与XCode不同的系统包含目录。 确保额外的OpenGL头文件(GLFW,GLM,GLUT)也放在你的g ++安装中。
您可能还必须为静态库执行此操作。