c/c++ android 平台交叉编译 {ERROR: Failed to create toolchain}

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 的压缩包。 ------这段是我添加的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值