CommonCrypto不是为arch armv7 iOS构建的

我刚刚升级到新的XCode.升级后,我的一些应用程序将无法构建.我得到这个错误
ld: cannot link directly with /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/usr/lib/system/libcommonCrypto.dylib.  Link against the umbrella framework 'System.framework' instead. for architecture armv7
clang: error: linker command Failed with exit code 1 (use -v to see invocation)

我试过一切 – 清洁,重新导入,改变架构…

请帮忙

解决方法

我在尝试了上述两个都不适用于我之后,以一种不同的方式解决了这个问题.

问题是,当我从主界面(主要的构建设置…等)添加库时,我最初正在搜索加密,然后两个lib都会返回libcorecrypto.dylib和liblibcommonCrypto.dylib,如果你注意到,这两个都存在与通常添加的通常是yello色的库不同的是灰色.添加这些会导致编译器返回(还有一些其他的libs丢失,比如libz,或者另外一个需要更多的函数的lib.

如果您注意到上述两个lib通常都位于JavaScriptCore.framework库(这是黄色库)下,因此,通过删除上述两个并添加JavaScriptCore.framework,问题已解决,构建成功显示

还要提到,基于在JavaScriptCore.framework中作为捆绑包存在的灰色库,libcrypto和另一个不存在于/Library/…/system/path,如上所述,即您没有删除他们从你的系统,他们只是不在那里.

同样,解决方案是:

*从您的主要XCODE项目设置,不要添加:* dd

libcorecrypto.dylib 
liblibcommonCrypto.dylib

相反,添加

JavaScriptCore.framework

在你的.m(代码)中,通常要做的是:

#include <CommonCrypto/CommonDigest.h> (or any of your other libs as needed in code)...

它应该工作正常

我希望这有帮助.

亲切的问候

相关文章

1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...
1 删除0字节文件 find -type f -size 0 -exec rm -rf {} ...
## 步骤 1:安装必要的软件包 首先,需要确保系统已安装 `dh...