为Boost Bjam iOS指定IPHONEOS_DEPLOYMENT_TARGET

3

我使用这个项目来为iOS构建boost库:https://github.com/danoli3/ofxiOSBoost/blob/master/scripts/build-libc%2B%2B

我的客户端项目已经设置好了:

IPHONEOS_DEPLOYMENT_TARGET = 7.0
Base SDK = 9.2

我在链接Boost框架时会收到以下警告。
ld: warning: object file ((error_code.o)) was built for newer iOS version (9.2) than being linked (7.0)
ld: warning: object file ((future.o)) was built for newer iOS version (9.2) than being linked (7.0)
ld: warning: object file ((once.o)) was built for newer iOS version (9.2) than being linked (7.0)
ld: warning: object file ((thread.o)) was built for newer iOS version (9.2) than being linked (7.0)

我该如何更改boost bjam的部署目标?或者有没有修复这些警告的方法?

1个回答

2

在你所引用的脚本中,像这样将标志“-miphoneos-version-min=7.0”添加到user-config.jam中。

updateBoost()
{
echo Updating boost into $BOOST_SRC...

cp $BOOST_SRC/tools/build/example/user-config.jam $BOOST_SRC/tools/build/example/user-config.jam.bk

cat >> $BOOST_SRC/tools/build/example/user-config.jam <<EOF
using darwin : ${IPHONE_SDKVERSION}~iphone
: $XCODE_ROOT/Toolchains/XcodeDefault.xctoolchain/usr/bin/$COMPILER -arch  armv7 -arch armv7s -arch arm64 -fvisibility=hidden -miphoneos-version-min=7.0 - fvisibility-inlines-hidden $EXTRA_CPPFLAGS
: <striper> <root>$XCODE_ROOT/Platforms/iPhoneOS.platform/Developer
: <architecture>arm <target-os>iphone
;
using darwin : ${IPHONE_SDKVERSION}~iphonesim
: $XCODE_ROOT/Toolchains/XcodeDefault.xctoolchain/usr/bin/$COMPILER -arch i386     -arch x86_64 -fvisibility=hidden -miphoneos-version-min=7.0 -fvisibility-inlines-hidden $EXTRA_CPPFLAGS
: <striper> <root>$XCODE_ROOT/Platforms/iPhoneSimulator.platform/Developer
: <architecture>x86 <target-os>iphone
;
EOF

doneSection
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接