marsella
marsella

Reputation: 123

dyld symbol not found, but nm reports otherwise (OS X Update issue)

I'm working on an OpenGL project, it compiles fine, running it gives the following error:

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

I've gathered that this means there's a missing symbol in the OpenGL framework. However, nm claims otherwise:

0000000000001239 T _gliCreateContextWithShared

Asher had a similar-looking problem, but I couldn't figure out how to apply his solution to my situation.

Worth noting: I upgraded to OS X 10.9.2 recently, and all my projects depending on this library now fail with the same error.

Upvotes: 3

Views: 2335

Answers (1)

marsella
marsella

Reputation: 123

Fixed it by adding

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

to my .bash_profile. Probably not the most elegant solution but such is life.

Upvotes: 4

Related Questions