【问题标题】:Xcode Issue: Library not loaded: @rpath/libswiftAppKit.dylibXcode 问题:库未加载:@rpath/libswiftAppKit.dylib
【发布时间】:2017-06-02 23:31:32
【问题描述】:

我已经使用 Swift 3 完成了一个 Cocoa(不是 iOS)应用程序。我已经在台式计算机上对其进行了测试。它工作正常。我已经在另一台台式计算机上对其进行了测试。它工作正常。我什至设法将它发送到 iTunes Connect。但我没有提交它,因为相同的应用程序无法在 MacBook Pro (2013) 上运行。无论如何,我已经在配备视网膜显示屏的 MacBook Pro 上对其进行了测试。那是整个问题开始发生的时候。实际上,这个桌面应用程序几天前在同一台 MacBook Pro 上运行。我认为它还没有被沙盒化。现在,每次我通过 AirDrop 将在不同 iMac 型号上运行的二进制副本发送到 MacBook Pro 并尝试运行该应用程序时,都会收到一条错误消息,显示为 EXC_CRASH (Code Signature Invalid)。所以我删除了Developer /Xcode / DerviedData. 里面的一些文件,现在,我什至无法调试应用程序。当我调试它时,它会挂起一条致命的错误消息,这是我以前从未见过的。

现在,如果我双击 Xcode 生成的应用程序,我会收到一个崩溃报告,上面写着 Library not loaded: @rpath/libswiftAppKit.dylib。我以为我可能不小心删除了一些系统文件。但如果我调试现有的 macOS 和 iOS 应用程序,运行它们就没有问题。幸运的是,整个问题都发生在这个特定的 Xcode 项目上。

我在这里找到的一个主题建议我们将始终嵌入 Swift 标准库选项设置为。我已经这样做了,没有任何效果。我还阅读了一条建议,该建议说明了将开发人员证书上的When using this certification 选项设置为Use System Defaults,这没有帮助。我尝试过的另一个建议是清除缓存(Command + Shift + Option + K)。

如果您有任何建议,请告诉我。谢谢。

更多信息

我还在 MacBook Pro 上反复看到一条奇怪的警告消息,上面写着 "%@" 找不到。当我双击应用程序图标时弹出此错误消息。可以参考

String(format: NSLocalizedString("whatever", comment: ""), variable name)

【问题讨论】:

    标签: swift cocoa xcode8


    【解决方案1】:

    我已经解决了这个问题!我和你有同样的问题。但是从https://www.reddit.com/r/swift/comments/4nac9s/using_swift_frameworks_with_command_line/的回答中,我知道关键是rpath。

    所以我尝试在以下两个设置中将此路径添加到项目中:

    ${DT_TOOLCHAIN_DIR}/usr/lib/swift/macosx/
    
    1. 运行路径搜索路径
    2. 图书馆搜索路径

    我不知道为什么需要同时添加这两个设置,但它可以工作!

    【讨论】:

    • 这两条路径都是一样的
    • 我只需要在 macOS 10.12 中添加到 Runpath Search Paths 即可。此外,如果您面向其他 SDK,则需要使用 /iphonesimulator//iphoneos/ 等。如果您面向多个平台,则可以添加所有这些。
    • 但是我认为现在你的应用程序只能在安装了 Xcode 的机器上运行。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-31
    • 2015-01-15
    • 2017-04-18
    • 2015-02-25
    • 2013-12-18
    相关资源
    最近更新 更多