我在Swift框架中使用CommonCrypto - 并且一直运行良好一年多。Xcode 7.3测试版1与Swift中的CommonCrypto比较
我曾经在这里找到解决方案:Importing CommonCrypto in a Swift framework
具体来说,从斯威夫特框架引用CommonCrypto,我只好:
创建module.map
文件名为CommonCrypto
我旁边的框架的Xcode项目文件夹中。 module.map
内容:
module CommonCrypto [system]
{
header "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/include/CommonCrypto/CommonCrypto.h"
link "CommonCrypto"
export *
}
- 在我的框架,项目的斯威夫特导入路径,我想补充
CommonCrypto
- 在我的框架,项目的库搜索路径,我包括:
$(SDKROOT)/usr/lib/system
- 在我的源代码,我包括:
import CommonCrypto
这工作得很好;有点复杂 - 但它的工作。
但是,在Xcode 7.3 beta 1(7D111g)中,这种技术不再有效。
看来libcommonCrypto.tbd
已经从Xcode-beta.app内部的$(SDKROOT)/usr/lib/system
中删除。我无法在iPhoneOS SDK文件夹结构下的任何位置找到它。
所以我得到这些错误:
ld: warning: directory not found for option '-L/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk/usr/lib/system' ld: library not found for -lCommonCrypto for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
这将是巨大的,如果疯狂的模块图业务与简单的东西代替。例如,只是使用import CommonCrypto
在任何情况下,我不知道如何解决此问题,所以任何帮助表示赞赏。
我在这里问作为一个新的问题,如果解决方案与上一个问题中找到的解决方案有很大不同,尽管我很欣赏这可能不合适。