12

一些上下文:我正在阅读有关使用 OpenGL的教程。本教程需要几个库才能工作。其中一个库是 FreeGLUT。我在 OS X 上使用 Lion。

我已经下载了 FreeGLUT 并按照安装说明进行操作,但是当我运行“make all”命令时出现此错误:

error: GL/gl.h: No such file or directory
error: GL/glu.h: No such file or directory

我已经在互联网上搜索了一个解决方案,我能从中了解到的是编译器在定位这些文件时遇到了问题,并且编译器使用的路径需要更改。

编辑:好的,我发现它不是编译器,而是由于某种原因这些文件不存在。去尝试找出他们为什么不在那里。

4

3 回答 3

16

在 Mac 上,这些头文件的位置与 Linux 上的不同。所以在代码中,替换这个:

#include <GL/gl.h>
#include <GL/glu.h>

有了这个:

#include <OpenGL/gl.h>
#include <OpenGL/glu.h>

那应该可以解决您的问题。

于 2012-06-02T22:28:05.600 回答
0

该教程 OpenGLBook.com 基于 OpenGL 4.0 核心上下文,并以 3.3 核心上下文作为替代方案。充其量在 OS X(使用 Mountain Lion)上,您将获得与 3.3 足够相似的 3.2 核心上下文 - 但不幸的是,这与 GLUT 不兼容 - OS X 包括原始的 GLUT(由于许可问题未修改),这需要很多在 3.2 核心上下文中不可用的过时 OpenGL 函数。

如果您想在 OS X(10.6.3 或更高版本)上完成本教程,而无需处理许多烦人的不兼容问题,并且使用面向未来的 OpenGL,我建议安装最新版本的 XQuartz(2.7.2 或更高版本),它包括 FreeGLUT(从 2.8.0 开始)。

https://dl.bintray.com/xquartz/downloads/XQuartz-2.7.11.dmg

于 2012-08-24T05:02:04.303 回答
0

install freeglut via macports, modify premake4.lua so that it builds the Unofficial OpenGL SDK in the glsdk apart from freeglut. manually copy and paste the lib and include folders of the freeglut (via macports) and modify #include_GL/freeglut.h> inside framework.cpp (framework folder) so that it finds the header. also fill the blanks in folder names, e.g. Tut 13 Impostors -> Tut_13_Impostors

it works for me

more details here

于 2012-09-01T13:21:56.513 回答