xcrun -sdk 选择

在将FFmpeg编译成IOS版的时候,接触到编译脚本的一段(删减了部分):

 1 for ARCH in $ARCHS
 2     do
 3         if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]
 4         then
 5             PLATFORM="iPhoneSimulator"
 6         else
 7             PLATFORM="iPhoneOS"
 8         fi
 9 
10         XCRUN_SDK=`echo $PLATFORM | tr '[:upper:]' '[:lower:]'`
11         CC="xcrun -sdk $XCRUN_SDK clang"
12         CXXFLAGS="$CFLAGS"
13         LDFLAGS="$CFLAGS"
14 
15         TMPDIR=${TMPDIR/%\/} $CWD/$SOURCE/configure \
16             --target-os=darwin \
17             --arch=$ARCH \
18             --cc="$CC" \
19             $CONFIGURE_FLAGS \
20             --extra-cflags="$CFLAGS" \
21             --extra-ldflags="$LDFLAGS" \
22             --prefix="$THIN/$ARCH" \
23         || exit 1
24 
25         make -j3 install $EXPORT || exit 1
26         cd $CWD
27     done

脚本中有一句"xcrun -sdk $XCRUN_SDK clang", 是编译的重点, 其中-sdk 后面接的就是要编译的平台. 一开始没怎么注意, 后来想要编译i386的OSX库, 由于我的OSX是x64的, 常规方法好像只能编译出x64的FFmpeg库, 试了好久, 最终决定尝试使用和编译IOS库类似的方法. 但问题来了, 这个XCRUN_SDK选什么呢?

观察IOS版的脚本发现,xcrun的-sdk后面接的sdk_name和xcodebuild的-sdk是一样的. 试了一下, 果然如此, 似乎又学习到了一点东西!

xcodebuild支持的sdk可使用"xcodebuild -showsdks"命令查看, 选择时, 忽略后面的版本号就好. 例如 iphoneos9.3, 则选择 iphoneos

转载于:https://www.cnblogs.com/HuangWj/p/6422820.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值