【发布时间】:2012-02-16 22:01:16
【问题描述】:
如何使用 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
【问题讨论】:
-
请运行 'file /path/to/outout/SDL' 命令,并在此处写入输出。谢谢。
标签: android android-ndk sdl cross-compiling