我正在开发一个OpenGL项目,它可以很好地编译,运行它会出现以下错误:

swr-130-64-133-128:assignment Marcella$ ./run
dyld: lazy symbol binding failed: Symbol not found: _gliCreateContextWithShared
  Referenced from: /System/Library/Frameworks/OpenGL.framework/Resources/GLEngine.bundle/GLEngine
  Expected in: flat namespace

dyld: Symbol not found: _gliCreateContextWithShared
  Referenced from: /System/Library/Frameworks/OpenGL.framework/Resources/GLEngine.bundle/GLEngine
  Expected in: flat namespace

我已经收集到这意味着OpenGL框架中缺少一个符号。但是,nm声称:
0000000000001239 T _gliCreateContextWithShared

Asher有一个类似的问题,但是我不知道如何将他的解决方案应用于我的情况。

值得注意的是:我最近升级到OS X 10.9.2,并且所有依赖此库的项目现在都失败,并出现相同的错误。

最佳答案

通过添加进行修复

export DYLD_INSERT_LIBRARIES='/System/Library/Frameworks/OpenGL.framework/Resources/GLEngine.bundle/GLEngine'

到我的.bash_profile。也许这不是最优雅的解决方案,但生活就是这样。

10-08 11:51