【问题标题】:Xcode Swift: Error using a framework that uses a pod (CocoaPods)Xcode Swift:使用使用 pod (CocoaPods) 的框架时出错
【发布时间】:2016-11-04 09:38:42
【问题描述】:

我制作了一个使用 pod (SCrypto) 的 Swift 框架。我可以毫无错误地构建框架和宿主项目。

但是当我(从使用框架的项目)运行 iPhone 模拟器时,我收到以下错误:

dyld:库未加载:@rpath/SCrypto.framework/SCrypto

引用自:...

原因:图片未找到

如果有人帮助我解决这个问题,我将非常感激。

详情:

已经尝试清理和构建,没有工作。

项目和框架都使用 Swift 编写,适用于 iOS。我正在使用最新版本的 Swift 和 Xcode。

我的 pod 文件包括 use_frameworks!。我没有在我的项目目录中运行“pot init” - 只是在框架目录中。

在项目的构建阶段,框架列在 Link Binary with Libraries 下。

还有一些关于堆栈溢出的其他页面关于此错误,但那里的解决方案已过时或对我不起作用。它不允许我评论那些(说它对我不起作用)。对于简单的事情(使用使用 pod 的框架),其他一些似乎很复杂,这让我怀疑它们是否会起作用。同样,我不能在那里发表评论并提出这个问题。所以我不得不改用这个页面。

【问题讨论】:

  • pod 安装后你在运行什么?我是说 Xproj 还是 Workspace?
  • 所以你的库本身也是一个 pod?您如何使用您的图书馆?
  • UmairAfzal:工作区。问题出在使用使用 pod (SCrypto) 的框架的项目中。框架本身构建成功。 Prine:不,它不是图书馆。这是一个框架。将框架的项目文件拖到宿主项目中
  • 尝试更新 CocoaPods。 'sudo gem install cocoapods'
  • 大约 2 小时前已经这样做了

标签: ios swift xcode cocoapods


【解决方案1】:

你需要在你的项目目录中运行 pod init ,这样当你运行 pod install 时它会安装到你的项目中,然后在安装后关闭所有东西并再次打开你的项目,只有这一次使用 yourprojectname.xcsworkspace。确保它不是 yourprojectname.xcodeproject 否则它会给你 No such module 错误

【讨论】:

  • 做到了。现在我得到:“无法为 'SCrypto' 加载底层模块”
  • 这通常会发生,但是在您构建项目后它会自动消失。你试过这样做吗?
  • 是的,我在构建时遇到错误。也尝试过清理和构建,但没有用。
  • 你试过cmd+shift+K吗?也可以尝试右键单击 SCrypto 资源文件夹并搜索模块并将其拖到您的项目中。
  • 我的意思是捆绑
猜你喜欢
  • 2019-12-31
  • 2019-03-18
  • 2015-09-28
  • 2017-06-29
  • 2021-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多