如何在我从Linux移植的C++项目中使用Open GL

ber*_*436 4 c++ opengl macos xcode

我只是试图在我的Mac上编译一个开源C++应用程序.我找不到错误GL/gl.h文件.我知道这意味着它无法找到需要编译和运行的开放式GL库.我对下一步做什么感到困惑,因为

  1. OS X似乎包含对open gl的内置支持.有没有下载.
  2. 看起来OSX和Linux上的OpenGL头文件名可能不同( OS X和Linux的OpenGL头文件)

所以我对下一步该做什么很困惑.我是否下载OpenGL并将其链接到我的项目?我是否将xcode配置为使用OpenGL的原生版本?我是否更改了标题?

有人可以提供更多的方向.这个答案给出了windows/linux的答案 - 但不是OS X: 如何获得GL库/标题?

dat*_*olf 10

Apple认为如果它们与其他人不兼容并将OpenGL标头放在一个名为OpenGL不仅仅的目录中,那就很聪明了GL.所以你必须使用

#include <OpenGL/gl.h>
Run Code Online (Sandbox Code Playgroud)

在Apple系统和

#include <GL/gl.h>
Run Code Online (Sandbox Code Playgroud)

在其他地方.编译器预定义的预处理器宏是你的朋友.

#ifdef __APPLE__
#  include <OpenGL/gl.h>
#else
#  include <GL/gl.h>
#endif/*__APPLE__*/
Run Code Online (Sandbox Code Playgroud)