2013-02-28 15 views
5

budynku valgrind-3.8.1 na Ubuntu 12.04 z NDK-R6 lub NDK-R8d nie powiodło się z następującym błędem:budynku Valgrind dla Androida

... 
cc1: Error: not rekognized option "-marm" 
priv/main_globals.c:1:0: Error: wrong Value (cortex-a8) for -mtune=switch 
... 

Mój build-skrypt:

export NDKROOT=/home/stefan/android-ndk-r6-crystax-2 
export HWKIND=generic 
PATH=$NDKROOT/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin:$PATH 
PATH=$PATH:$NDKROOT/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/libexec/gcc/arm-linux-androideabi/4.4.3 
export CROSS_COMPILE=arm-linux-androideabi- 
export AR=${CROSS_COMPLIE}ar 
export LD=${CROSS_COMPLIE}ld 
export CC=${CROSS_COMPLIE}gcc 
export CXX=${CROSS_COMPLIE}g++ 
export CPP=${CROSS_COMPLIE}cpp 

./autogen.sh CPPFLAGS="--sysroot=$NDKROOT/platforms/android-3/arch-arm -DANDROID_HARDWARE_$HWKIND" CFLAGS="--sysroot=$NDKROOT/platforms/android-3/arch-arm" 
./configure --prefix=/data/local/Inst --host=armv7-unknown-linux --target=armv7-unknown-linux --with-tmpdir=/tmp 

I wreszcie

make  

:)

Jakieś pomysły? Dzięki

Także ja zaakceptuje zbudował binarnych;))

+0

Jest Android. mk dostępny dla Valgrind w drzewie źródeł Androida. Zobacz np. https://android.googlesource.com/platform/external/valgrind/+/master/main – Michael

+0

fajnie, sprawdzę to! :) – oc1d

+0

hmm .. ale jak właściwie to skompilować? umieścić w folderze jni? Dzięki temu w usłudze Android.mk nie zdefiniowano ścieżki włączenia i kompilacja nie powiodła się :( – oc1d

Odpowiedz

2

Postępuj zgodnie z instrukcjami na tej stronie: http://valgrind.org/docs/manual/dist.readme-android.html

Nie skompilować valgrind jak embbeded dla aplikacji, ale kompilacji ramię kompatybilne binarny valgrind na twoim komputerze, połączony z biblioteką Android-ndk, a następnie możesz wysłać valgrind do jakiegoś folderu na swoim urządzeniu lub symulatorze. To około 130 Mb danych.

Należy pamiętać, że urządzenie musi być zrootowane.

Następnie, gdy chcesz uruchomić valgrind z aplikacją dla systemu Android, będziesz musiał dołączyć valgrind do aplikacji. W tym celu zajrzeć tutaj: How to start an android app with valgrind