繁体   English   中英

在Xcode 4.3 for Simulator上构建OpenSSL失败

[英]Building OpenSSL on Xcode 4.3 for Simulator fails

备用标题(以帮助搜索):

  • Xcode构建阶段脚本失败
  • Xcode失败,出现“make [1]:cc:没有这样的文件或目录”
  • 为模拟器构建失败,构建设备工作
  • Xcode无法为i386构建,但将用于armv6和armv7

我有一个OpenSSL Xcode项目,它使用Build Phase脚本来编译iOS的libcrypto.alibssl.a静态库(它也适用于Mac OS X)。

device构建工作没有问题, libcrypto.alibssl.a被创建并可以链接到项目中。

但是,尝试为simulator构建相同的库会导致生成错误:

cc -I. -I.. -I../include  -D_DARWIN_C_SOURCE -UOPENSSL_BN_ASM_PART_WORDS -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk   -c -o cryptlib.o cryptlib.c
make[1]: cc: No such file or directory
make[1]: *** [cryptlib.o] Error 1
make: *** [build_crypto] Error 1

设置之间似乎没有什么区别,唯一的变量是架构; armv7 i386

从Xcode 4.3开始,Apple停止捆绑命令行工具作为Xcode的标准配置。

这个问题是由Xcode尝试使用不同的编译器(armv6和armv7)和模拟器(i386)引起的。

在armv6和armv7的构建阶段脚本中,Xcode将使用捆绑的工具(在cc (clang)编译的问题中)。 但对于模拟器构建,构建阶段脚本使用系统版本。

如果您尚未明确安装这些工具,则构建将失败。

要安装工具,请选择Xcode > Preferences > Downloads

Xcode Prefs

然后单击“安装”“命令行工具”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM