分类: LINUX
2013-02-18 16:02:00
从网上可以找到一些ARM toolchain,但是由于系统使用的不是glibc而是Bionic libc。因此只能使用静态编译程序。
其实Android的NDK自带了toolchain,但是不能直接使用NDK目录内的toolchain,否则会出现找不到crtbegin_dynamic.o文件。
即使用-L指定目录或者直接放到gcc命令行也还是提示该文件找不到。
其实Android NDK提供了脚本来剥离出单独的toolchain,脚本的名字叫make-standalone-toolchain.sh
1. 下载Android NDK
http://developer.android.com/sdk/ndk/index.html
我用的是android-ndk-r8b
2. 解压NDK至指定目录下
cd到android-ndk-r8b/
build/tools/make-standalone-toolchain.sh --platform=android-8
默认便在[/tmp/ndk-NAME]目录下生成工具链
Auto-config: --toolchain=arm-linux-androideabi-4.6 Copying prebuilt binaries... Copying sysroot headers and libraries... Copying libstdc++ headers and libraries... Creating package file: /tmp/ndk-juguofeng/arm-linux-androideabi-4.6.tar.bz2 Cleaning up... Done.
若想生成4.4.3的工具链,可以这样指定
build/tools/make-standalone-toolchain.sh --platform=android-8 --toolchain=arm-linux-androideabi-4.4.3