图书馆未加载 - Alamofire

时间:2017-07-17 20:17:37

标签: ios swift xcode cocoapods alamofire

我被一个小虫困扰了好几个小时。我正在使用Alamofire构建一个框架,并在iOS项目中进行测试。每当我运行项目时,我都会收到此错误:

  

dyld:未加载库:@ rpath / Alamofire.framework / Alamofire     参考自:/Users/theoreorestrauss/Library/Developer/Xcode/DerivedData/TGClient-ecnnvvvxipoufihfghkpxccc/choccyc/cn/inGugcts/TGClient/TGClient     原因:未找到图像

我在网上搜索GitHub问题,Stack文章等等。我已经清理,删除了衍生数据,添加和删除了嵌入式二进制文件中的框架等。

对于那里的任何人来说,这不是重复。所有其他问题和答案都已过时。

如果有人可以提供帮助,我会非常感激。非常感谢提前。欢呼声,

西奥

5 个答案:

答案 0 :(得分:1)

这就是我遇到这个问题时所做的事情(它确实有效!):

  1. 通过突出显示它并单击减号,从目标/嵌入式库和目标/链接框架和库中删除Alamofire框架。 (如果您没有在屏幕中央看到这些区域,请单击左上角的项目名称。)

  2. 执行产品清洁(Shift-Cmd-K)。

  3. 在“嵌入式​​二进制文件”部分中,单击+号。添加Alamofire。 (或将Alamofire图标从左栏拖到此部分并放在那里)

  4. Xcode应该修复所有内容,现在应该正确加载到设备上。

  5. FrameworkView

答案 1 :(得分:1)

我在使用Alamofire 4.5 + carthage时遇到此错误,我在构建阶段将框架添加为链接库,应用程序在启动时崩溃。在XCode 9.1我无法找到嵌入式框架的选项,因此我添加了一个运行脚本来复制Carthage的框架,它开始工作。 所以基本上这个

  1. 像往常一样将框架添加到构建阶段。
  2. 添加以下运行脚本
  3.   

    / usr / local / bin / carthage copy-frameworks

         

    $(SRCROOT)/Carthage/Build/iOS/Alamofire.framework

    Copy frameworks

答案 2 :(得分:0)

您能否清除一次派生数据并再次构建项目。

以下是清除派生数据的方法。打开终端,只需点击此命令即可。

rm -rf ~/Library/Developer/Xcode/DerivedData

答案 3 :(得分:0)

确保您的构建设置>运行路径搜索路径为

• @executable_path/Frameworks
• $(inherited)

同样在您的框架搜索路径中,条目是

"$PODS_CONFIGURATION_BUILD_DIR/Alamofire"

答案 4 :(得分:0)

我通过在构建阶段菜单中取消选中 run script only when installing 来解决此问题