我有一个包含2个目标的XCode Swift项目,一个传统的应用程序和一个屏幕保护程序。我想在两者中使用一个框架(我已尝试过至少2个没有运气的框架)。
在应用程序中,他们工作正常,但在屏幕保护程序中,尽管我能够编译(我有一个带有相应importe的桥接文件,我已经复制并链接了框架)
当屏幕保护程序运行时,它在控制台中出现此错误:
Jul 1 16:33:15 ironbird.local ScreenSaverEngine[60006]: Error loading /Users/juanjo/Library/Screen Savers/Ninja.saver/Contents/MacOS/Ninja: dlopen(/Users/juanjo/Library/Screen Savers/Ninja.saver/Contents/MacOS/Ninja, 265): Library not loaded: @executable_path/../Frameworks/Paddle.framework/Versions/A/Paddle
Referenced from: /Users/juanjo/Library/Screen Savers/Ninja.saver/Contents/MacOS/Ninja
Reason: image not found
有人可以帮助我解决问题或至少调试它吗?如果我搜索错误,我会发现忘记复制或链接框架的人,这不是我的情况。
提前致谢!
更新:如果我使用install_name_tool来更改查找绝对路径图像的路径,我会使屏幕保护程序运行。
答案 0 :(得分:0)
我让它改变了原来的框架:
$ cd Frameworks/Paddle.framework/Versions/A/
$ install_name_tool -id @rpath/Paddle.framework/Versions/A/Paddle Paddle