编译android源码并且flash进设备
2013-01-12 00:00
323 查看
Building the System
The basic sequence of build commands is as follows:Initialize
Initialize the environment with the envsetup.sh script. Note that replacing "source" with a single dot saves a few characters, and the short form is more commonly used in documentation.$ source build/envsetup.sh
or
$ . build/envsetup.sh
source 是用 .sh 文件对命令进行的初始化。
Choose a Target
Choose which target to build with lunch. The exact configuration can be passed as an argument, e.g.$ lunch full-eng
The example above refers to a complete build for the emulator, with all debugging enabled.
If run with no arguments lunch will prompt you to choose a target from the menu.
All build targets take the form BUILD-BUILDTYPE, where the BUILD is a codename referring to the particular feature combination. Here's a partial list:
Build name | Device | Notes |
---|---|---|
full | emulator | fully configured with all languages, apps, input methods |
full_maguro | maguro | full build running on Galaxy Nexus GSM/HSPA+ ("maguro") |
full_panda | panda | full build running on PandaBoard ("panda") |
Buildtype | Use |
---|---|
user | limited access; suited for production |
userdebug | like "user" but with root access and debuggability; preferred for debugging |
eng | development configuration with additional debugging tools |
Build the Code
Build everything with make. GNU make can handle parallel tasks with a -jN argument, and it's common to use a number of tasks N that's between 1 and 2 times the number of hardware threads on the computer being used for the build. E.g. on a dual-E5520 machine (2 CPUs, 4 cores per CPU, 2 threads per core), the fastest builds are made with commands between make -j16 and make -j32.$ make -j4
Run It!
You can either run your build on an emulator or flash it on a device. Please note that you have already selected your build target with lunch, and it is unlikely at best to run on a different target than it was built for.Flash a Device
To flash a device, you will need to use fastboot, which should be included in your path after a successful build. Place the device in fastboot mode either manually by holding the appropriate key combination at boot, or from the shell with$ adb reboot bootloader
Once the device is in fastboot mode, run
$ fastboot flashall -w
相关文章推荐
- Android系统篇之—-编写简单的驱动程序并且将其编译到内核源码中【转】
- 编译完android源码并且已经make sdk之后,重启不能调用emulator命令解决方案
- Android5.1.1源码 - host编译和设备编译
- Android系统篇之----编写简单的驱动程序并且将其编译到内核源码中
- Android系统篇之----编写系统服务并且将其编译到系统源码中
- Android系统篇之----编写系统服务并且将其编译到系统源码中
- 面向设备的Android源码编译
- Android系统篇之----编写系统服务并且将其编译到系统源码中
- Android源码编译得到的adb为什么不识别设备?
- Android系统篇之----编写系统服务并且将其编译到系统源码中
- Android源码编译---Nexus 设备出厂镜像
- 如何在Android设备中用NDK编译SQLite并且对SQLite进行操作(增删)-How to Compile SQLite for Android using NDK
- Android系统篇之----编写简单的驱动程序并且将其编译到内核源码中
- Android源码编译(6)---选择设备
- Android系统篇之—-编写系统服务并且将其编译到系统源码中【转】
- Android系统篇之----编写简单的驱动程序并且将其编译到内核源码中
- android 4.0.1源码编译成功后运行emulator提示No command 'emulator' found
- Android源码中的模块编译及Android.mk文件语法
- android 源码编译流程
- Linux下编译Android源码