Xcode mac上缺少OpenGL标头
我试图在mac中使用OpenGL,但当我包含glut头时,它包含OpenGL头,然后它无法找到Xcode mac上缺少OpenGL标头,xcode,macos,opengl,Xcode,Macos,Opengl,我试图在mac中使用OpenGL,但当我包含glut头时,它包含OpenGL头,然后它无法找到OpenGL/gl.h头。 我在互联网上查找了这个问题,似乎这些文件应该在/System/Library/Frameworks/OpenGL.framework/Headers目录中,但这样的子目录不存在。我尝试重新安装XCode,但没有成功 关于我应该如何进行的任何建议 一些细节: 以下是/System/Library/Frameworks/OpenGL.framework/Versions/Curr
OpenGL/gl.h
头。
我在互联网上查找了这个问题,似乎这些文件应该在/System/Library/Frameworks/OpenGL.framework/Headers
目录中,但这样的子目录不存在。我尝试重新安装XCode,但没有成功
关于我应该如何进行的任何建议
一些细节:以下是
/System/Library/Frameworks/OpenGL.framework/Versions/Current
的外观:
localhost@Current$ ls -la
total 368
drwxr-xr-x 7 root wheel 238 Oct 7 2012 .
drwxr-xr-x 4 root wheel 136 Oct 7 2012 ..
drwxr-xr-x 16 root wheel 544 Oct 7 2012 Libraries
-rwxr-xr-x 1 root wheel 185184 Oct 3 2012 OpenGL
drwxr-xr-x 3 root wheel 102 Jun 16 2011 PlugIns
drwxr-xr-x 14 root wheel 476 Oct 7 2012 Resources
drwxr-xr-x 3 root wheel 102 Oct 7 2012 _CodeSignature
谢谢大家在我所有的OS X开发机器上,我有:
/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers
我甚至有针对目标版本的SDK:
/Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers/gl.h
/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers/gl.h
无论文件位于何处,它位于
../Library/Frameworks/OpenGL.framework/..
中这一事实表明,您需要将-framework OpenGL
添加到编译器/链接器开关中,以便正确定位包含和库。对于其他遇到此问题的人来说,解决方案相当简单。问题是可能并不是所有的命令行工具都已安装,所以关键是要安装它们。您只需要按照post中的建议安装缺少的所有命令行工具。然后你会有一个漂亮的OpenGL hello world平稳运行:在mavericks(10.9)中,这些被移动了。/System/Library/Frameworks中的内容不再有任何开发标题;它似乎纯粹是框架的部署构建。因此,安德斯是对的——他正在寻找他被告知要寻找的地方,但他正在寻找的文件根本不在那里
相反,XCode本身将这些存储在其安装的一部分中—XCode为各种版本的OS X提供了多个SDK,其中包含这些库的头文件。例如:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers/我不确定。我在一段时间前安装了XCode,然后,当再次重新安装它时,它没有要求这个选项。我会深入调查的。非常感谢。顺便说一句,OpenGL.Frameworks/中没有Headers目录。@Andrés:不应该有一个开始的目录-它应该是
OpenGL.framework/Versions/Current/Headers
,大多数时候它都是指向OpenGL.framework/Versions/a/Headers
的符号链接。看看更新的问题。OpenGL.framework/目录中没有这样的子目录。@Andrés:我完全没有主意了。从4.0版开始,他们一定在Xcode中做了一些更改。我能想到的最后一件事是ls-lAr”/System/Library/Frameworks/OpenGL.framework/Versions/“
也许你有多个版本,一个用于二进制分发,一个用于编译?你可能应该接受这个答案,这样人们就不会认为这个问题还没有解决;)
[ andon@Aleph : ~ ] ls -lA "/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers"
total 1464
-rw-r--r-- 1 root wheel 557B Mar 3 2010 CGLContext.h
-rw-r--r-- 1 root wheel 381B Mar 3 2010 CGLCurrent.h
-rw-r--r-- 1 root wheel 389B Mar 3 2010 CGLDevice.h
-rw-r--r-- 1 root wheel 14K Mar 3 2010 CGLIOSurface.h
-rw-r--r-- 1 root wheel 128K Mar 3 2010 CGLMacro.h
-rw-r--r-- 1 root wheel 6.4K Feb 12 2011 CGLProfiler.h
-rw-r--r-- 1 root wheel 28K Feb 12 2011 CGLProfilerFunctionEnum.h
-rw-r--r-- 1 root wheel 1.5K Mar 3 2010 CGLRenderers.h
-rw-r--r-- 1 root wheel 14K Mar 3 2010 CGLTypes.h
-rw-r--r-- 1 root wheel 5.6K Mar 3 2010 OpenGL.h
-rw-r--r-- 1 root wheel 151K Mar 3 2010 gl.h
-rw-r--r-- 1 root wheel 267K Mar 3 2010 glext.h
-rw-r--r-- 1 root wheel 328B Mar 3 2010 gliContext.h
-rw-r--r-- 1 root wheel 63K Mar 3 2010 gliDispatch.h
-rw-r--r-- 1 root wheel 16K Mar 3 2010 glu.h
-rw-r--r-- 1 root wheel 2.6K Mar 3 2010 gluContext.h
-rw-r--r-- 1 root wheel 2.2K Mar 3 2010 gluMacro.h