1.直接调用gcc方法
以下出自https://blog.csdn.net/smfwuxiao/article/details/6587709
1.1 sysroot --寻找目录
里面是一些对应android 版本的 *.a, .o,.so
$ SYSROOT=$NDK/platforms/android-8/arch-arm
1.2 CC —编译器路径
<name> ----cpu 类型
<host-system> 基本上都是linux ,可见的未来应该不会有人用windows 做android 内核
$ export CC="$NDK/toolchains/<name>/prebuilt/<host-system>/bin/<prefix>gcc --sysroot=$SYSROOT"
上面第1行之后之后,再去执行./configure 就可以编译出arm程序了。不过还需要考虑共享库的链接问题,要确保该程序没有链接ndk未提供的共享库。该方法的缺陷就是,不能使用 C++ STL(STLport 或 GNU libstdc++ ),也不能使用异常机制和RTTI。
2.ndk独立工具链法
/home/<username>/Dev_SDK/NDK_r16/build/tools/make-standalone-toolchain.sh
执行指令
/home/<username>/Dev_SDK/NDK_r16/build/tools/make-standalone-toolchain.sh --platform=android-5 --install-dir=/home/<username>/Dev_SDK/NDK_Standalone_ToolChain [ --arch=arm ]
原笔者没有提到,上面指令中的android-5 不是android 5.0, 5是 api-level.所以这里要填10+或者20+的数字。根据自己的目标系统而定。挺慢的哦。我输入android-21 生成270+MB 的压缩包。 ------这段是我添加的。