What is the meaning of aosp's lunch combos and what do I need to choose?

stack overflow picture stack overflow · Jun 24, 2015 · Viewed 10.8k times · Source

I am a new comer to Android devices ROM development. Anyway, I am now in the progress of building AOSP to a chinese device with 64 bit processor. I am following the menu at source.android.com, and when I am running the "lunch" command, the terminal says: "Lunch menu... pick a combo:".

There are two options of which I am debating: aosp_arm-eng and aosp_arm64_eng.

As I have mentioned I am building for a 64 bit processor device. Does it mean that I need to pick the aosp_arm64-eng? Because I have tried it but then the emulator didn't work for some reason..

I will be happy to receive help, Thanks :)

Answer

G. Blake Meike picture G. Blake Meike · Jun 24, 2015

Those names are constructed, on the fly, by the build system. They reflect the specific device builds in the $AOSP/device directory (specifically, by running the the vendorsetup.sh files in the subdirectories).

The portion of the name before the hyphen ('-') is the target hardware. The portion after the hyphen is one of eng, userdebug, and release. Those keywords control the debugging tools added to the build and whether adbd runs as root or not.

Both aosp_arm-eng and aosp_arm64_eng should produce a useful emulator. Neither, however, will work on your device. For your device you will need a specific, customized, build. If there isn't one already available, creating it can be quite time consuming.