2013-02-28 10 views
5

costruzione valgrind-3.8.1 su Ubuntu 12.04 con NDK-R6 o NDK-r8d non riuscita con errore seguente:costruzione Valgrind per android

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

mia build-script:

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 

E infine

make  

:)

Qualche idea? GRAZIE

Inoltre avrei accettato binari edificata;))

+0

C'è un Android. mk disponibile per Valgrind nell'albero dei sorgenti di Android. Vedi per es. https://android.googlesource.com/platform/external/valgrind/+/master/main – Michael

+0

cool, lo controllerò! :) – oc1d

+0

hmm .. ma come si compila effettivamente questo? metti nella cartella jni? Con questo, non includono-percorso è definito in Android.mk e generazione non riuscita :( – oc1d

risposta

2

Seguire le istruzioni in questa pagina: http://valgrind.org/docs/manual/dist.readme-android.html

Non si compila valgrind come embbeded per la vostra applicazione, ma si compila un compatibile con braccio binario valgrind sul tuo computer, collegato con la libreria android-ndk, e quindi puoi spedire valgrind su qualche cartella sul tuo dispositivo o simulatore. Sono circa 130 Mb di dati.

Si noti che il dispositivo deve essere rootato.

Quindi, ogni volta che si desidera eseguire valgrind con l'app Android, sarà necessario allegare valgrind all'app. Per questo, guarda qui: How to start an android app with valgrind