символ dyld не найден, но nm сообщает об обратном (проблема обновления OS X)

Я работаю над проектом 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

Ашер У меня была похожая проблема, но я не мог понять, как применить его решение в моей ситуации.

Стоит отметить: я недавно обновился до OS X 10.9.2, и все мои проекты, зависящие от этой библиотеки, теперь терпят неудачу с той же ошибкой.

3

Решение

Исправил, добавив

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

на мой .bash_profile. Наверное, не самое элегантное решение, но такова жизнь.

4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]