dyld:Library not loaded:@ rpath/libswiftCore.dylib on XCode 9 only
我最近从8.3.3升级到XCode 9。dyld:Library not loaded:@ rpath/libswiftCore.dylib on XCode 9 only
我们的项目是用Objective-C编写的,就像我们使用的所有其他框架一样。我添加了一个用swift(3.0版)编写的框架。在XCode 8中,我能够在模拟器和设备上无问题地构建和运行项目。在Xcode 9我无法运行在模拟器或设备项目由于错误:
dyld: Library not loaded: @rpath/libswiftCore.dylib
Referenced from: .../libraryname
Reason: image not found
降级之后,我能够再次运行该项目。
我的配置有:具有与xcode9一个类似的问题
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
STRIP_SWIFT_SYMBOLS = NO;
SWIFT_VERSION = 3.0;
其他人?有谁知道如何解决这个问题?
Swift框架必须使用与您的项目相同版本的Swift来构建(在这种情况下,自升级并且正在运行Xcode 9以来,Swift 4是不可思议的)。
重建并重新添加/替换框架与新版本,它应该工作。
您使用迦太基并在您的机器上有多个XCode_s?我最近在运行 carthage update --use-ssh --platform iOS
时遇到了问题,而在命令行中选择了xcode8.3.3。然后在构建中包含构建的框架。
为了在XCode9中工作,您需要为您的Xcode.app运行切换命令 sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
并再次运行Carthage。
希望它有帮助。
有同样的问题。我使用Xcode 9.2,Swift 4和我的设备在iOS 11.1中运行。
解决方案:
我删除了苹果全球开发者关系的证书颁发机构在钥匙串访问,并用一个新的更换(你可以下载certificate here)
在那之后,我已经改变了“信托”(双点击证书)从“始终信任”到“系统默认”。
试过了,这并没有解决这个问题。 – Rao
添加您的框架来选择目标 - >常规 - >嵌入式二进制文件 –
该库在嵌入式二进制文件和链接的框架和库链接。 –
你有没有检查过这个https://stackoverflow.com/questions/26104975/dyld-library-not-loaded-rpath-libswiftcore-dylib-image-not-found –