core: Pass stack change user requests on to tools
[valgrind.git] / README.android_emulator
blobe19f6154fe9062cd7e9ebcdc50bffea49ca9d489
2 How to install and run an android emulator.
4 mkdir android # or any other place you prefer
5 cd android
7 # download java JDK
8 # http://www.oracle.com/technetwork/java/javase/downloads/index.html
9 # download android SDK
10 # http://developer.android.com/sdk/index.html
11 # download android NDK
12 # http://developer.android.com/sdk/ndk/index.html
14 # versions I used:
15 #  jdk-7u4-linux-i586.tar.gz
16 #  android-ndk-r8-linux-x86.tar.bz2
17 #  android-sdk_r18-linux.tgz
19 # install jdk
20 tar xzf jdk-7u4-linux-i586.tar.gz
22 # install sdk
23 tar xzf android-sdk_r18-linux.tgz
25 # install ndk
26 tar xjf android-ndk-r8-linux-x86.tar.bz2
29 # setup PATH to use the installed software:
30 export SDKROOT=$HOME/android/android-sdk-linux
31 export PATH=$PATH:$SDKROOT/tools:$SDKROOT/platform-tools
32 export NDKROOT=$HOME/android/android-ndk-r8
34 # install android platforms you want by starting:
35 android 
36 # (from $SDKROOT/tools)
38 # select the platforms you need
39 # I selected and installed:
40 #   Android 4.0.3 (API 15)
41 # Upgraded then to the newer version available:
42 #     Android sdk 20
43 #     Android platform tools 12
45 # then define a virtual device:
46 Tools -> Manage AVDs...
47 # I define an AVD Name with 64 Mb SD Card, (4.0.3, api 15)
48 # rest is default
51 # compile and make install Valgrind, following README.android
54 # Start your android emulator (it takes some time).
55 # You can use adb shell to get a shell on the device
56 # and see it is working. Note that I usually get
57 # one or two time out from adb shell before it works
58 adb shell
60 # Once the emulator is ready, push your Valgrind to the emulator:
61 adb push Inst /
64 # IMPORTANT: when running Valgrind, you may need give it the flag
66 #    --kernel-variant=android-no-hw-tls
68 # since otherwise it may crash at startup.
69 # See README.android for details.
72 # if you need to debug:
73 # You have on the android side a gdbserver
74 # on the device side:
75 gdbserver :1234 your_exe
77 # on the host side:
78 adb forward tcp:1234 tcp:1234
79 $HOME/android/android-ndk-r8/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-gdb your_exe
80 target remote :1234