2

我的应用程序构建时没有错误或警告,并且在 Xcode 7.2.1 中运行良好。但是当我将它存档并尝试在 Xcode 之外打开它时,图标会短暂闪烁,并且出现此错误:

Application Specific Information:
dyld: launch, loading dependent libraries

Dyld Error Message:
  Library not loaded: @rpath/ORSSerial.framework/Versions/A/ORSSerial
  Referenced from: /Users/USER/Desktop/*/Ascel AE20125 Controller.app/Contents/MacOS/Ascel AE20125 Controller
  Reason: image not found

Binary Images:
    0x7fff626f2000 -     0x7fff62729007  dyld (360.19) <9D05FDF4-65CE-3B53-86D4-ABE1A5BF35F3> /usr/lib/dyld
    0x7fff962e5000 -     0x7fff962e5fff  com.apple.Cocoa (6.11 - 22) <0A634D46-B468-3CBC-B2A0-16C381C11BF2> /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
    0x7fff9c462000 -     0x7fff9c7b6ff7  com.apple.Foundation (6.9 - 1256.1) <66106CC9-9D97-3846-88D8-4BF6BB508296> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation

如何编译我的应用程序以使其在 Xcode 之外工作?当我尝试在没有 XCODE 环境的情况下打开已编译的 .app 时会出现此问题。

该应用程序是使用 swift 制作的。

4

2 回答 2

1

要扩展@NickolayOlshevsky 的答案,您需要确保将 ORSSerial.framework 复制到应用程序的内部 Frameworks 文件夹中。在项目的构建阶段,您应该确保有一个阶段(例如嵌入框架)将 ORSSerial.framework 复制到目标的 Frameworks 文件夹中:

嵌入框架构建阶段

另一种配置方法是将框架添加到目标设置的常规选项卡的嵌入式二进制部分:

在此处输入图像描述

如果您打开 ORSSerialPort 附带的 PacketParsingDemo 或 RequestResponseDemo 示例项目,您可以看到在这些项目中正确配置了此设置。

于 2016-02-22T17:29:11.903 回答
0

很可能您仅将库复制到输出包以用于调试配置,而在发布时缺少它。检查项目/目标设置。

于 2016-02-22T16:47:53.320 回答