我正在尝试将GLEW库链接到Xcode项目,但我遇到了一个问题。每当我将我的构建设置为与libGLEW.a链接时,我会在启动时立即崩溃,并显示错误输出:
yld:未加载库:/usr/lib/libGLEW.1.12.0.dylib 参考自:/Users/xxx/Library/Developer/Xcode/DerivedData/xcode-test/Products/Debug/manualWindow.app/Contents/MacOS/manualWindow 原因:未找到图像
我没有编写任何代码来请求我的应用程序加载此动态库。这种行为似乎可能是我的GLEW库实际上是一个导入库,并且正在尝试加载dylib。我自己构建了GLEW,在生成静态库的对象时,我可以看到在命令行中指定了“-DGLEW_STATIC”。
有人知道我怎么能判断我的GLEW库(libGLEW.a)是否真的是dylib的导入库?作为后续工作,如何正确构建库以避免这种情况?
答案 0 :(得分:4)
看起来这里真的发生了其他事情。
当我构建静态GLEW库时,它还在它旁边构建了动态版本。根据我在网上进行的其他搜索,如果库搜索路径中存在同名版本,Xcode似乎会自动尝试加载库的动态版本。
一旦我删除了我的构建文件夹(libGLEW.dylib)中的动态版本,那么当离开时加载错误,我可以链接并调用静态库函数而不会出现问题。