最近项目中用到了c++一些底层文件,但是这些底层文件需要c++的boost库的支持。因此自己在网上参考了许多资料,整合一些有关boost库的编译过程。
首先编译库最低适配ios7.1,编译的boost库为boost_1.56.0为最新的,http://sourceforge.net/projects/boost/files/boost/1.56.0/(建议用这个地址下的比较快)
【温馨提醒:升级到Xcode4.3和iOS SDK5.1之后,开发环境最大的区别是SDK的目录由Developer/Platform/xx变成了Applications/Xcode.app/Contents/Developer/Platform/xxx】
解压下载好的boost_1.56zip文件(一般本人喜欢放到桌面上),打开控制台
cd: ~/boost_1_56_0的目录下面
cd: tools/build/example (老版本是在tools/build/v2下)
open user-config.jam
#模拟器编译
using darwin : 7.1~iphonesim
: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch i386 -DBOOST_SP_USE_PTHREADS -DBOOST_THREAD_DONT_USE_ATOMIC -std=c++11 -stdlib=libc++
: <striper> <root>/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer
: <architecture>x86 <target-os>iphone
;
#真机编译添加
using darwin : 7.1~iphone
: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch armv7 -arch armv7s -arch arm64 -DBOOST_SP_USE_PTHREADS -std=c++11 -stdlib=libc++
: <striper> <root>/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
: <architecture>arm <target-os>iphone
;
保存然后返回到 cd: ~/boost_1_56_0下面
终端输入:./bootstrap.sh
此时在同一级目录下面出现文件project-config.jam 该文件是对b2 和 bjam两个文件的配置信息。
终端输入:export SDK_VERSION="7.1"
终端输入:(模拟器版本)。。。。。。。。。。。。
(真机版本)./bjam link=static threading=multi variant=release address-model=$bitlevel toolset=darwin runtime-link=static
敲击回车开始编译,时间会有点长,编译过程中会有很多的警告,会等到你想要的结果的。