0

I am trying to use ARM DS-5 streamline for Android and I am having a hard time to figure out the basic settings.

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.

The official document says this. And I was trying to see the kernel configuration menu on Android. So I typed something like this

adb shell
cd sys
cd kernel

and I could see this

-r--r--r-- root     root                 4096 1970-01-14 16:54 uevent_seqnum
-rw-r--r-- root     root                 4096 1970-01-14 16:54 uevent_helper
-rw-r--r-- root     root                 4096 1970-01-14 16:54 profiling
drwxr-xr-x root     root                        1970-01-14 16:54 uids
drwxr-xr-x root     root                        1970-01-14 16:54 debug
drwxr-xr-x root     root                        1970-01-01 00:00 ipv4
drwxr-xr-x root     root                        1970-01-14 16:54 mm
drwxr-xr-x root     root                        1970-01-14 16:54 slab
drwxr-xr-x root     root                        1970-01-14 16:54 config

I typed

make menuconfig

and I got his

make: not found

How do I see the menuconfig menu on Android devices ?

Thanks in advance..

Oak Bytes
  • 4,649
  • 4
  • 36
  • 53
codereviewanskquestions
  • 13,460
  • 29
  • 98
  • 167

2 Answers2

3

Like you, i wanted to use ARM DS-5.

Notice something important about this - your kernel might be already be built properly with the required menuconfig options (It was for me on a production device). However, you still need access to the kernel code to build binary that will run your target device.

The way to check if the kernel was already built properly is "adb shell" into a running device and then:

adb pull /proc/config.gz ./config.gz

and then from your linux env. (you can simply extract and look inside if you're on windows)

zcat ./config.gz | grep <option>
//for example
zcat ./config.gz | grep CONFIG_TRACING.

I learned this from: {DS-5 install root}/arm/gator/README_Streamline.txt

On my Samsung Galaxy S4, for example, CONFIG_PROFILING=y is found (amongst other needed flags).

ZeDuS
  • 329
  • 2
  • 10
1

This is not something you do on your Android device but on your Android build machine. If you have installed the Android build environment and then checked out a suitable kernel source you would use make gconfig or make menuconfig to configure a kernel.

However, often devices have a default configuration already. For instance to build the kernel for the Nexus S you use the following:

export PATH=$PATH:$ANDROID_ROOT/prebuild/linux-x86/toolchain/arm-eabi-4.4.3/bin
make ARCH=arm clean
make ARCH=arm herring_defconfig
make -j4 ARCH=arm CROSS_COMPILE=arm-eabi-

For another device, something similar will likely be available.

patthoyts
  • 32,320
  • 3
  • 62
  • 93
  • Thanks for your answer. I have Galaxy tab 7.0 which pre-installed Android 2.2. In other words, I haven't downloaded the source code and haven't built it. But I do have Android development environment such as Eclipse with Android SDK. In this case, what should I do to see the configuration menu? I know this is a very basic question but I don't have much experience with Linux – codereviewanskquestions Sep 23 '11 at 21:28
  • In your answer what is the "ANDROID_ROOT"? Is this the root directory of the source code which I haven't downloaded? – codereviewanskquestions Sep 23 '11 at 21:29
  • If you intend to get into building android you need to read the developer documentation. See http://source.android.com/source/initializing.html for a guide to setting up the build environment. Its not the same as using the SDK to create apps. The CyanogenMod wiki has some documentation about building both the Android system and the linux kernel for various devices. Typically stock AOSP android needs extra stuff to boot on a given device which CyanogenMod knows to obtain (usually from your device). – patthoyts Sep 23 '11 at 21:45
  • Where do I type those command line? Where do I get the makefile? – codereviewanskquestions Sep 24 '11 at 02:33