You copied the Doc URL to your clipboard.

Setting up an Android target

These instructions are specific to targets running Android.


You can locate all of the files provided by DS-5 by selecting Help → ARM Extras... from the main menu.

Prepare and build your kernel

You must enable certain kernel configuration options to run Streamline. In the kernel configuration menu, use the arrow keys to navigate to the desired submenu and press Enter. Each submenu is listed with the action you need to take within it.

General Setup

Make sure the Profiling Support option is enabled.

Kernel Hacking

In the Kernel Hacking submenu, navigate to the Tracers submenu and press Enter. Make sure the Trace process context switches option is enabled.


Make sure Profiling Support is enabled.

Kernel Features

Make sure the High Resolution Timer Support is enabled. Enable Use local timer interrupts if you are using a Symmetric MultiProcessing (SMP) target.

If these options are not set correctly, you must change them and rebuild your kernel. If they are set correctly, you are ready to build and install the gator driver.

Build the gator daemon

The gator daemon and driver collect target metrics and then send them to your host machine.


To build the gator daemon, you must install the Android NDK. For more information on how to do this, visit the Android NDK site.

To enable profiling, you must build and load the gator daemon on your target. Follow these steps to build the gator daemon from the source archive:

  1. Move to the directory that contains the gator daemon source:

    cd .../gator/daemon-src

  2. Enter the following commands to unzip the archive:

    tar -xzf gator-daemon.tar.gz


    You may need to use sudo in front of this command if you do not have privileges.

  3. Issue the following command:

    mv gator-daemon jni

  4. Issue the following command to build gatord:



    If ndk is not on your path, instead issue the following command:

    execute /path/to/ndk/ndk-build.

  5. The newly created gatord is located in build_directory/libs/armeabi


You must build the gator daemon on your gcc-enabled target or a Linux host. It is not possible to build the gator daemon on a Windows host.

Build the gator module

To use Streamline with your Android target, you must build the gator driver on a Linux host and place it in the same directory as the gator daemon, gatord, on the target file system. Transfer the gator driver module sources from your host to the target. They are located on your host here:


Assuming that you have unzipped the file and that you have all of the required tools for building kernel modules, enter the following command on your target to create the gator.ko module:

make -C kernel_build_dir M=`pwd` ARCH=arm CROSS_COMPILE=<...> modules

Connect to the target

Streamline supports connection to your target using ethernet. Using the Android Debug Bridge (ADB) utility that is part of the Android SDK, it is possible to forward a TCP port from the target to your localhost over a USB connection. ADB can also be configured to work over ethernet.

For more information about the Android SDK and ADB setup, see the Android website.

Once ADB is set up, forward the Streamline port to your localhost using the following command:

adb forward tcp:8080 tcp:8080

Run the gator daemon on your target

Copy gatord and gator.ko into the file system on the target. . gatord must be placed in the same directory as gator.ko on the target.

Enter the following command to instantiate the gator driver.

insmod gator.ko

Now run gatord on the target:

./gatord &

Set capture options to support your Android target

In the Capture Options dialog box, opened in the ARM Streamline Data view in Eclipse for DS-5 and enter the ethernet address. If you use the ADB to forward the port, enter Localhost in the Address field.


With Android, make sure to add the shared libraries you are interested in profiling to the session using the Program Images section of the Capture Options dialog box.

Was this page helpful? Yes No