xcrun -sdk iphonesimulator clang在xcode6-beta7之后无法交叉编译

时间:2014-09-17 13:49:09

标签: xcode

在配置ffmpeg时,我使用“xcrun -sdk iphonesimulator clang”作为CC。

xcrun -sdk iphonesimulator clang无法创建可执行文件。 如果xcrun -sdk iphonesimulator clang是交叉编译器,请使用--enable-cross-compile选项。 如果你知道交叉编译意味着什么,那么只能这样做。 C编译器测试失败。

xcode5没问题。

===========更新======== 我添加了一个测试,似乎没有链接_start用于模拟器。

AGSPC98:pwd fluke$ cat> ~/tmp/ios.c
int main(void){ return 0; }
AGSPC98:pwd fluke$ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -fasm -fno-short-enums -fno-strict-aliasing -arch i386 -miphoneos-version-min=5.0 -g -fno-inline-functions -O0 -falign-functions=4 -DDEBUG=1 -DVPLAYER_IOS=1 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.0.sdk -c -o ~/tmp/ios.o ~/tmp/ios.c
AGSPC98:pwd fluke$ 
AGSPC98:pwd fluke$ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.0.sdk -arch i386 -miphoneos-version-min=5.0 -o ~/tmp/ios ~/tmp/ios.o
Undefined symbols for architecture i386:
  "start", referenced from:
     implicit entry/start for main executable
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
AGSPC98:pwd fluke$ nm ~/tmp/ios.o 
00000000 T _main

1 个答案:

答案 0 :(得分:0)

-miphoneos-version-min=5.0更改为-miphoneos-version-min=6.0会使一切正常。