最近在移植一个库,所以比较多的牵扯到了编译(compile)。
因为这个库很大程度上的依赖c++,stl,所以仅仅使用android prebuilt好的toolchain就有些显得不够了。
首先下载源代码(Goto: http://android.git.kernel.org/pub/,里面有 android-ndk-toolchain-20090323.tar.bz2和 android-ndk-toolchain-20081019.tar.bz2 )
或者你先下载ndk,然后使用tools/目录下的各种脚本,比如这个脚本(download-toolchain-sources.sh)就能下载toolchain的源代码。
然后,看README吧。
一般来说是:$(Source)/. configure --target=arm-eabi 这样子就可以了,但是我要使用(libstdc++.so)
所以:
$(Source)/. configure --target=arm-eabi --enable-libstdc__v3 --enable-shared
okay,开始make,这个时候会碰到:cc1: warings are treated as error;
也就是说警告也被当成了错误处理了。那么我们只要改makefile,把所有-Werror给去除就okay啦.
因为这个库很大程度上的依赖c++,stl,所以仅仅使用android prebuilt好的toolchain就有些显得不够了。
首先下载源代码(Goto: http://android.git.kernel.org/pub/,里面有 android-ndk-toolchain-20090323.tar.bz2和 android-ndk-toolchain-20081019.tar.bz2 )
或者你先下载ndk,然后使用tools/目录下的各种脚本,比如这个脚本(download-toolchain-sources.sh)就能下载toolchain的源代码。
然后,看README吧。
一般来说是:$(Source)/. configure --target=arm-eabi 这样子就可以了,但是我要使用(libstdc++.so)
所以:
$(Source)/. configure --target=arm-eabi --enable-libstdc__v3 --enable-shared
okay,开始make,这个时候会碰到:cc1: warings are treated as error;
也就是说警告也被当成了错误处理了。那么我们只要改makefile,把所有-Werror给去除就okay啦.