方法一(最简单的):
下载:android-ndk-r16-beta1
然后下载Boost-for-Android:https://github.com/moritz-wundke/Boost-for-Android
然后到Boost-for-Android的目录执行:
./build-android.sh /path/to/android-ndk-r16-beta1
方法二(较复杂):
解压:
unzip android-ndk-r15c-linux-x86_64.zip
unzip boost_1_65_1.zip
cd boost_1_65_1/
./bootstrap.sh
vim tools/build/example/user-config.jam
import os ; if [ os.name ] = CYGWIN || [ os.name ] = NT {
androidPlatform = windows-x86_64 ;
}
else if [ os.name ] = LINUX {
androidPlatform = linux-x86_64 ;
}
else if [ os.name ] = MACOSX {
androidPlatform = darwin-x86 ;
} modules.poke : NO_BZIP2 : ;
ANDROID_NDK = /path/to/android-ndk-r15c ;
using gcc : android4. : $(ANDROID_NDK)/toolchains/arm-linux-androideabi-4.9/prebuilt/$(androidPlatform)/bin/arm-linux-androideabi-g++ :
<archiver>$(ANDROID_NDK)/toolchains/arm-linux-androideabi-4.9/prebuilt/$(androidPlatform)/bin/arm-linux-androideabi-ar
<ranlib>$(ANDROID_NDK)/toolchains/arm-linux-androideabi-4.9/prebuilt/$(androidPlatform)/bin/arm-linux-androideabi-ranlib
<compileflags>--sysroot=$(ANDROID_NDK)/platforms/android-/arch-arm
<compileflags>-I$(ANDROID_NDK)/sources/cxx-stl/gnu-libstdc++/4.9/include
<compileflags>-I$(ANDROID_NDK)/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi/include <compileflags>-DNDEBUG
<compileflags>-D__GLIBC__
<compileflags>-DBOOST_FILESYSTEM_VERSION=
<compileflags>-lstdc++
<compileflags>-lgnustl_shared
<compileflags>-mthumb
<compileflags>-fno-strict-aliasing
<compileflags>-std=gnu++
<compileflags>-O2
;
cp tools/build/example/user-config.jam tools/build/src/
./b2 --with-system --with-serialization toolset=gcc-android4.9 link=static runtime-link=static target-os=linux --stagedir=android
静态库就生成在
boost_1_65_1/android/lib文件夹下