使用Android独立工具链为ARM构建SDL

时间:2012-01-23 14:56:25

标签: android android-ndk sdl cross-compiling

如何使用Android NDK的独立工具链构建libsdl?我不能使用标准的ndk-build,因为我必须与现有的构建系统集成。

我知道我可能必须分别在我的PATH和CC环境变量中放置交叉编译器的路径和名称,但我认为还有许多其他事情需要完成 - 例如可能需要禁用SSE和3DNow(目标架构是ARM)等。

这是我到目前为止所做的:

$ HOSTCONF=arm-eabi-linux
$ TOOLCHAIN=$HOME/android/toolchain
$ export ARCH=armv7-a
$ export SYSROOT=$TOOLCHAIN/sysroot
$ export PATH=$PATH:$TOOLCHAIN/bin:$SYSROOT/usr/local/bin
$ export CROSS_COMPILE=arm-linux-androideabi
$ export CC=${CROSS_COMPILE}-gcc
$ export CXX=${CROSS_COMPILE}-g++
$ export CFLAGS="-DANDROID -mandroid -fomit-frame-pointer --sysroot $SYSROOT -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -mthumb"
$ export CXXFLAGS=$CFLAGS
$ ./configure --host=$HOSTCONF --build=i686-pc-linux-gnu  --with-sysroot=$SYSROOT --prefix=$SYSROOT/usr/local --disable-joystick
$ make
$ make install

1 个答案:

答案 0 :(得分:1)

问题中列出的环境编译得很好。