dyld:库未加载:@rpath/libswiftContacts.dylib

14 浏览
0 Comments

dyld:库未加载:@rpath/libswiftContacts.dylib

dyld: 库未加载: @rpath/libswift_stdlib_core.dylib

dyld: 库未加载: @rpath/libswiftCore.dylib。问题仍然存在。

我知道这些问题已经被回答了很多次,但是当我在XCode 7.2中编写Swift应用程序时,我还是找不到一个合适的解决方案来解决这个错误:

在这里,我使用了Contact和ContactUI框架:@rpath/libswiftContacts.dylib

dyld: 库未加载: @rpath/libswiftContacts.dylib

引用自:/var/mobile/Containers/Bundle/Application/C0F2B5CB-628C-4643-9473-648D3099D8FB/HomeMadeFood_User.app/HomeMadeFood_User

原因: 未找到图像

我尝试了所有这些操作:

- 重新启动Xcode、iPhone和电脑

- 清理和重新构建

- 撤销并创建新的证书/配置文件

- Runpath Search Paths 是 '$(inherited) @executable_path/Frameworks'

- Embedded Content Contains Swift Code 是 'Yes'

- Code Signing Identity 是 developer

- 删除Xcode的Derived Data目录。

但是我始终得到相同的错误...

我尝试了这样做,但是我得到了一个错误:

/Users/mac-jarc/Library/Developer/Xcode/DerivedData/HomeMadeFood_User-bmwdevsopruaqxfrbibhaspidobn/Build/Products/Debug-iphoneos/HomeMadeFood_User.app/Frameworks/Contacts.framework: bundle格式无法识别、无效或不适用

Command /usr/bin/codesign 失败,退出码为1

0
0 Comments

(dyld: Library not loaded: @rpath/libswiftContacts.dylib)这个问题的出现的原因是构建的框架或其依赖框架之一使用了Swift标准库。解决方法是在构建设置中创建一个新的键,并将其值设置为ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES。

这个问题的原因是在构建框架或其依赖框架时,使用了Swift标准库。当程序运行时,由于找不到所需的库文件,就会出现(dyld: Library not loaded: @rpath/libswiftContacts.dylib)这个错误。

要解决这个问题,我们需要在构建设置中进行一些更改。具体来说,我们需要创建一个名为ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES的新键,并将其值设置为YES。这样,在构建过程中,框架将始终嵌入所需的Swift标准库,避免了在运行时找不到库文件的错误。

以下是解决该问题的代码示例:

ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;

通过将上述代码添加到构建设置中,我们可以确保Swift标准库始终被嵌入到构建的框架中,从而解决(dyld: Library not loaded: @rpath/libswiftContacts.dylib)的问题。

0
0 Comments

在我们的案例中,很明显Xcode在解决目标依赖关系时存在一个bug。

首先,我要说的是,解决方法是:

import PassKit

现在,在你抬起那只眉毛之前,我要解释一下为什么这样做有效:

  1. 我们依赖于一个导入了PassKit的Swift框架
  2. 我们向团队成员分发了预编译的二进制文件
  3. 团队成员观察到了崩溃,就像楼主提到的一样
  4. 在应用目标中添加了这个导入语句,Xcode会嵌入所需的Swift库

注意:仅仅在GUI中链接PassKit并没有任何作用。

0
0 Comments

最近几周,我遇到了同样的错误:

dyld: Library not loaded: @rpath/libswiftContacts.dylib

基本上我之前可以在设备上运行和测试我的应用。然后大约两周前,我再也无法在设备上运行测试了。虽然模拟器上的测试运行得很好。我想不出有什么改变。我看到的错误就是上面那个。我在谷歌上搜索了很长时间,试图找到解决方法,尝试了很多修复措施都没有成功。最终起作用的修复方法是删除Derived Data。一旦我这样做了,我就能够再次在设备上运行测试了。

对我起作用的修复方法是:

  1. 打开Xcode > Preferences > Locations > Derived Data (点击小箭头在finder中打开文件夹)

    例如:/Users/[用户名]/Library/Developer/Xcode/DerivedData

  2. 删除整个DerivedData文件夹
  3. 清除/编译
  4. 在设备上测试 - 最终又可以工作了
0