-
-
Save awakened1712/7bb939ccfdda54018ed851edcff36ffb to your computer and use it in GitHub Desktop.
Valgrind 3.12.0 cross compile on Android
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
export NDKROOT=/home/notroot/android-ndk-r17b | |
#ndk root now could be installed in Android SDK manager/Extras/NDK Bundle; should be $ANDROID_HOME/ndk_bundle | |
echo "NKDROOT: " $NDKROOT | |
export ANRDOID_TOOLCHAIN="arm-linux-androideabi-4.9" | |
# Set up toolchain paths. | |
# | |
# For ARM | |
export AR=$NDKROOT/toolchains/$ANRDOID_TOOLCHAIN/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ar | |
export LD=$NDKROOT/toolchains/$ANRDOID_TOOLCHAIN/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ld | |
export CC=$NDKROOT/toolchains/$ANRDOID_TOOLCHAIN/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc | |
export CXX=$NDKROOT/toolchains/$ANRDOID_TOOLCHAIN/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++ | |
export RANLIB=$NDKROOT/toolchains/$ANRDOID_TOOLCHAIN/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ranlib | |
echo "AR: " $AR | |
echo "LD: " $LD | |
echo "CC: " $CC | |
echo "CXX: " $CXX | |
[[ ! -d "$NDKROOT" || ! -f "$AR" || ! -f "$LD" || ! -f "$CC" || ! -f "$CXX" ]] && echo "Make sure AR, LD, CC, CXX variables are defined correctly. Ensure NDKROOT is defined also" && exit -1 | |
./autogen.sh | |
# for ARM | |
ANDROID_PLATFORM=android-17 | |
ANDROID_SYSROOT="$NDKROOT/platforms/${ANDROID_PLATFORM}/arch-arm" | |
echo "SYSROOT: " $ANDROID_SYSROOT | |
ANDROID_INCLUDE="$NDKROOT/sysroot/usr/include" | |
echo "ANDROID_INCLUDE: " $ANDROID_INCLUDE | |
ANDROID_SYSTEM="$NDKROOT/sysroot/usr/include/arm-linux-androideabi" | |
echo "ANDROID_SYSTEM: " $ANDROID_SYSTEM | |
export HWKIND=generic | |
export CPPFLAGS="-D__ANDROID_API__=21 --sysroot=$ANDROID_SYSROOT -I$ANDROID_INCLUDE -isystem $ANDROID_SYSTEM -DANDROID_HARDWARE_$HWKIND" | |
export CFLAGS="-D__ANDROID_API__=21 --sysroot=$ANDROID_SYSROOT -I$ANDROID_INCLUDE -isystem $ANDROID_SYSTEM -DANDROID_HARDWARE_$HWKIND" | |
./configure \ | |
--prefix=/data/local/Inst \ | |
--host=armv7-unknown-linux --target=armv7-unknown-linux \ | |
--with-tmpdir=/sdcard | |
if [ $? -ne 0 ] | |
then | |
exit 1 | |
else | |
echo "configure success!" | |
fi | |
# note: on android emulator, android-14 platform was also tested and works. | |
# It is not clear what this platform nr really is. | |
make -j7 | |
if [ $? -ne 0 ] | |
then | |
exit 1 | |
else | |
echo "build success!" | |
fi | |
#install in source_code/Inst dir | |
make -j7 install DESTDIR=`pwd`/Inst |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment