NDK中找不到arm-linux-androideabi-gcc的解决办法
最近在研究Android上的Hook和Inject。在研究这篇文章的时候,提到了交叉编译,使用了arm-linux-androideabi-gcc,但是文章中没有提到这个工具在NDK中的位置。
Google一下,发现大多数页面中提到了$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin这个位置。但是我居然没有在这个位置发现arm-linux-androideabi-gcc。
所以我们需要亲自重新安装一个工具链。官方页面中已经告诉我们该怎么做。主要代码如下:
$NDK/build/tools/make_standalone_toolchain.py --arch arm --api 21 --install-dir /tmp/my-android-toolchain
其中/tmp/my-android-toolchain目录可以自定义,比如我的是~/Downloads/my-android-toolchain。$NDK需要替换成自己的NDK目录。
运行该命令后过一会就会在/tmp/my-android-toolchain下生成bin目录,其中就有了arm-linux-androideabi-gcc,还有在NDK中缺失的arm-linux-androideabi-clang、arm-linux-androideabi-clang++、arm-linux-androideabi-g++也都有了。
评论
发表评论