【问题标题】:How to use glew with XCode如何在 XCode 中使用 glew
【发布时间】:2014-04-02 17:05:23
【问题描述】:

我正在尝试将 glew 1.10.0 与最新的 XCode(5.0.2) 和最新的 Mac OsX 版本一起使用。到目前为止,我尝试了不同的方法:

  • 在“构建阶段”选项卡中添加了库“libGLEW.1.10.0.dylib”
  • 在构建阶段选项卡中添加了 OpenGL 框架
  • 将 Header 搜索路径更改为“usr/local/Cellar/glew/1.10.0/include”
  • 将库搜索路径更改为“usr/local/Cellar/glew/1.10.0/lib”
  • 包含带有“”和“”的 GL/glew.h

我总是收到错误“'GL/glew.h' file not found”

【问题讨论】:

    标签: c++ macos opengl xcode5 glew


    【解决方案1】:

    由于无论您获得的是旧版 OpenGL 2.1 渲染器还是核心 3.2+ 渲染器,您都可以链接一个库,因此在 OS X 上完全不需要 GLEW。这意味着来自 OpenGL 3.2+ 的事情将在链接时解决(在你甚至有一个渲染上下文来检查它是否受支持之前)。但是,如果您尝试使用渲染器在运行时未实现的功能,您将收到GL_INVALID_OPERATION 错误,或者操作将静默失败。它是 GL 函数的链接时 (OS X) 和运行时(Windows、Linux 等)分辨率之间的差异。

    如果您打算在 OS X 上使用来自 OpenGL 3.2+ 核心的功能而忘记 GLEW,只需包含 <OpenGL/gl3.h>。跨所有硬件 OS X 官方支持的已实现扩展集相对同质,更多地取决于渲染器版本,而不是实际硬件供应商(Apple 编写所有驱动程序)。您应该参考 Apple 发布的this matrix 以了解有关 GL 功能的更多详细信息,而不是依赖 GLEW。

    【讨论】:

    • 好的,谢谢你的链接,它很有用。当我在 Windows 或 Linux 上时,我将使用一些预处理器语句来包含和使用 glew。
    【解决方案2】:

    您需要将glew包含文件添加到位于项目设置中的HEADER_SEARCH_PATHS,然后您就可以编译了。

    但请注意,在 OSX 上完全不需要 GLEW。 OSX 已经配备了 OpenGL,并且已经准备好使用“现代 OpenGL”的所有扩展。你真的不需要 GLEW 做任何事情。

    【讨论】:

    • 我已经在 XCode 中添加了包含路径,就像我在帖子中所说的那样,但它不会编译。我之所以要使用glew,是因为我最终想要一个跨平台的软件。
    • 我明白了...无论如何...使用#ifdef's 在 Windows 和/或 Linux 下设置 GLEW...但是当您在 APPLE 时,只需使用 Apple OpenGL's标题...更容易
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-10
    相关资源
    最近更新 更多