linux - __ANDROID__ not defined when building valgrind for android -
when try configure valgrind android get:
platform variant: vanilla primary -dvgpv string: -dvgpv_arm_linux_vanilla=1
i figured out looking @ configure.in must case because of:
ac_egrep_cpp([bionic_libc], [ #if defined(__android__) bionic_libc #endif ], glibc_version="bionic")
the glibc_version not being set "bionic", __android__ must not defined. how can fix this? commands running are:
export ndkroot='/home/matt/desktop/android-ndk-r6' export hwkind=emulator export ar=$ndkroot/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-ar export ld=$ndkroot/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-ld export cc=$ndkroot/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc cd '/home/matt/desktop/valgrind-3.8.1' ./autogen.sh cppflags="--sysroot=$ndkroot/platforms/android-3/arch-arm -dandroid_hardware_$hwkind" cflags="--sysroot=$ndkroot/platforms/android-3/arch-arm" sudo ./configure --prefix=/data/local/inst --host=armv7-unknown-linux --target=armv7-unknown-linux --with-tmpdir=/sdcard
information machine i'm building on:
kernel : linux 3.2.0-23-generic (x86_64) default c compiler : gnu c compiler version 4.6.3 (ubuntu/linaro 4.6.3-1ubuntu5) distribution : linux mint 13 maya
edit: confirmed when running $cc directly, __android__ defined. ./configure not using $cc?
edit 2: adding cc=$cc ld=$ld ar=$ar
configure gives configure: error: c compiler cannot create executables
.
to work, need change parameters passed ./configure script to:
sudo ./configure --prefix=/data/local/inst --host=armv7-unknown-linux\ --target=armv7-unknown-linux --with-tmpdir=/sdcard0\ cppflags="--sysroot=$ndkroot/platforms/android-3/arch-arm -dandroid_hardware_$hwkind"\ cflags="--sysroot=$ndkroot/platforms/android-3/arch-arm"\ cc=$cc ld=$ld ar=$ar
Comments
Post a Comment