我试图创建一个基本的OS X框架,现在我刚刚创建了一个测试框架:TestMacFramework.framework,我试图将它导入到一个全新的OS X应用程序项目。

我已经构建了.framework文件并将其导入到新项目中,框架链接正常,我可以引用我添加到框架构建阶段部分的公共头文件。

然而,当我尝试运行容器应用程序时,我得到以下错误:

dyld: Library not loaded: /Library/Frameworks/TestMacFramework.framework/Versions/A/TestMacFramework
  Referenced from: /Users/samharman/Library/Developer/Xcode/DerivedData/TestMacContainer-dzabuelobzfknafuhmgooqhqrgzl/Build/Products/Debug/TestMacContainer.app/Contents/MacOS/TestMacContainer
  Reason: image not found

在谷歌了一下之后,我意识到我需要在我的容器应用程序构建阶段添加一个复制文件部分,所以我已经这样做了,并像这样设置它…

然而,我仍然得到运行时错误。显然我在这里做错了什么,但是苹果开发者库的资源引用了Xcode 2,所以不是很有帮助!

我错过了什么?

更新:

我可以在构建日志中看到我的TestMacFramework.framework被复制到.app contents/frameworks目录中,但它没有被安装到HD上的Library/ frameworks目录中

更新2:

如果我手动将TestMacFramework.framework复制到Library/Frameworks目录中,构建链接是正确的


当前回答

我也有同样的问题,但原因不同。 我已经创建了一个新的配置调试和发布(在项目->信息选项卡->配置)。 我不得不改变我的pod框架shell脚本(Pods-"appName"-frameworks.sh,在目标支持文件下)使其工作。

[Xcode 9]

其他回答

None of these issues solved this for me. The problem in the end was pretty easy. It looks like its a pretty major Xcode bug which I have logged the problem and fix under Apple bug: 29820370. If you are struggling (as it seems like there are several pages of problems similar to this ) then it would be great if you can raise a bug on bug reporter: https://bugreport.apple.com/ and reference the bug I raised to gain visibility. I want to make Xcode back into the pleasure that it was before - and this is something I am sure Xcode should have fixed itself.

下面是解决方案: 1. 打开钥匙串-去苹果全球开发者证书。 2. 双击它 3.将权限级别从“始终信任”更改为使用“系统默认” 4. 保存并关闭 5. 重新启动Xcode,清理并构建项目,它应该消失了。

下面是正确设置的截图: 希望这能有所帮助!

为我解决这个问题的方法是将Podfile中的主要目标的abstract_target更改为target。我之前将其设置为abstract_target,这导致了所描述的错误。现在它就像一个魔法

Xcode 11: 构建阶段->嵌入框架

这可能发生在Pod框架中。 我在AnswerBotProvidersSDK.framework中也遇到了同样的问题,我的错误是,我只在目标构建阶段设置运行脚本检查安装构建。

不正确的设置:

正确设置:

唯一对我有用的是:

目标>构建阶段> [CP]嵌入Pods框架 取消勾选“在生成日志中显示环境变量”和“仅在安装时运行脚本”