`

Ubuntu 14.04下Android系统源码编译

阅读更多
Ubuntu 14.04下Android系统源码编译
Android源码编译需要Linux环境,我这里用的是Ubuntu 14.04,虽然Ubuntu 16.04出来很久了。但是16.04有些依赖没解决得了,所以用14.04版本方便很多。下面将用Ubuntu 14.04环境为大家讲述源码的下载、编译和刷机。

1、安装curl、repo和git

安装curl

sudo apt-get install curl        //install curl tool
安装curl

sudo curl http://commondatastorage.googleapis.com/git-repo-downloads/repo  //download repo
如果你用这个下载安装不了,你可以直接sudo apt-get install repo,按照上面的提示安装即可。

安装Git

sudo apt-get install git
git配置

sudo git config --global user.email "your@example.com"
sudo git config --global user.name "Your Name"
这个配置是否真实性对于下载源码影响不大,你也可以直接填写your@example.com和Your Name这样的字样下载源码。

2.下载源码

下载源码之前先建好一个文件夹,然后用命令进入该文件夹,最后才建仓下载。这样的做的好处就是没那么混乱。

repo init -u git://codeaurora.org/platform/manifest.git -b release -m LA.BR.1.2.3-10210-8x09.0.xml --repo-url=git://codeaurora.org/tools/repo.git --repo-branch=caf-stable
repo sync
我这里下载的是高通安卓源码,
下载地址见:https://wiki.codeaurora.org/xwiki/bin/QAEP/release
上面的LA.BR.1.2.3-10210-8x09.0.xml对应的是Android5.1.1版本。你也可以选择你要下载的版本。
另外你也可以从谷歌和清华下载源下载。
谷歌源码下载:https://source.android.com/source/downloading.html#initializing-a-repo-client
清华下载源:https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/
一个系统的源码大概是40多GB,编译也要部分的空间,你的磁盘注意要留有足够的空间。

3.依赖包下载

sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip
1
1
安装openjdk7

sudo apt-get install openjdk-7-jdk
4.编译源码

在命令行里进入该源码的目录里。

source build/envsetup.sh
lunch
它会显示可选编译cpu架构,然后选择对应的cpu结构,一般选0,你也可以根据你需要来选。

Lunch menu... pick a combo:
     1. aosp_arm-eng
     2. aosp_arm64-eng
     3. aosp_mips-eng
     4. aosp_mips64-eng
     5. aosp_x86-eng
     6. aosp_x86_64-eng
     7. mini_emulator_mips-userdebug
     8. mini_emulator_x86_64-userdebug
     9. m_e_arm-userdebug
     10. mini_emulator_arm64-userdebug
     11. mini_emulator_x86-userdebug
     .......
aosp_arm64-eng
- arm CPU架构。
- 64代表64位系统
- eng代表engineer版本
- user正式版,权限受限制
- userdebug版本,在user版本的基础上开放了root权限和debug的权限。

最后开始编译

make -jn (“n” means the thread numbers of CPU)
这里的n表示线程数,一般是cpu数目的两倍。比如说make -j8。
编译好的文件在work/LINUX/Android/out/target/product/xxx/里面,
这里的目录根据因你的项目目录不同而不同。一般来说,emmc_appsboot.mbn、boot.img、userdata.img、system.img、recovery.img是你最终需要的产物。

5.部分编译

部分编译一般用于修改代码后在原来已经有编译好的资源下进行差异化编译。这样的编译速度快很多。
预备

source build/envsetup.sh
lunch
这里的命令意义同上。差别在最后一步。下面每一步执行前请先执行source build/envsetup.sh和lunch。

1)编译about(生成emmc_appsboot.mbn)

make aboot -jn(“n” means the thread numbers of CPU)
目标文件夹work/LINUX/android/out/target/product/xxx/
这里根据因你的项目目录不同而不同,如果你的命令执行不了,可能是你输入的命令字符格式不对,”-jn”需要是英文格式的

2)编译内核(生成boot.img)

make bootimage -jn
目标目录work/LINUX/android/out/target/product/xxx/,下面几个目录都是在这个目录下,就不一一重复了。
3)编译system(生成system.img)

make systemimage –jn
4)编译userdata(生成userdata.img)

make userdataimage –jn
5)编译recovery(生成recovery.img)

make recoveryimage –jn
6.刷机

这里我假定你配置好adb环境,如果没有请先下载Android SDK搭建环境。然后连上机子在电脑上让电脑识别,在命令行里输入下面命令进行烧写。
1)烧写emmc_appsboot.mbn

adb reboot bootloader
fastboot flash aboot <path to emmc_appsboot.mbn >
fastboot reboot
path to emmc_appsboot.mbn 是你的emmc_appsboot.mbn目录路径,下同。

2)烧写boot.img

adb reboot bootloader
fastboot flash boot <path to boot.img>
fastboot reboot
3)烧写system.img

adb reboot bootloader
fastboot flash system <path to system.img>
fastboot reboot
4)烧写userdata.img

adb reboot bootloader
fastboot flash userdata <path to userdata.img>
fastboot reboot
5) 烧写 recovery.img:

adb reboot bootloader
fastboot flash recovery <path to recovery.img>
fastboot reboot
相关链接:
谷歌下载源:https://source.android.com/source/downloading.html#initializing-a-repo-client
清华下载源:https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/
分享到:
评论

相关推荐

    Ubuntu14.04编译android4.4源码一次性成功

    在Ubuntu 14.04操作系统中编译Android 4.4源码是一个涉及多步骤和技术细节的过程。这个过程对于开发者来说是至关重要的,因为通过编译源码,可以自定义系统,修复bug,或者为特定设备添加支持。以下是详细的操作步骤...

    Ubuntu14.04下linphone-android编译

    在本文中,我们将深入探讨如何在Ubuntu 14.04操作系统上编译linphone-android项目。linphone是一款开源的VoIP(Voice over IP)软电话应用,支持多种平台,包括Android。对于开发者来说,从源码编译linphone-android...

    天嵌E9开发板在Ubuntu14.04 64位系统上的uboot内核编译

    标题中提到的知识点是关于如何在Ubuntu 14.04 64位操作系统上编译天嵌E9开发板的uboot和内核。具体来说,将涉及以下几个重要步骤和概念: 1. 编译环境搭建: - 在编译uboot和内核之前,需要根据E9开发板的手册搭建...

    AndroidN_Build_Environment_on_Ubuntu_14.04_64-bit_Installation_SOP.pdf

    3. 获取Android源码:从官方或者MTK提供的资源获取对应版本的Android源代码。 4. 配置编译环境:根据目标设备和平台配置环境变量和构建选项。 5. 编译构建:执行编译命令开始构建过程,等待编译完成。 6. 测试构建:...

    Ubuntu编译android4.4源码

    6. 源码编译过程:文档中没有详细描述编译Android源码的具体过程,但提到了编译分为四个主要步骤:安装虚拟机软件、安装Ubuntu系统、安装JDK等工具包、源码编译。 总结: 在编译Android 4.4源码的过程中,选择合适...

    Ubuntu14.04以及新版本_编译多平台MTK代码

    JDK是编译Android源码的基础环境之一,不同的Android版本对JDK的要求也不尽相同。例如,对于Android 4.4.4之前的版本,需要安装JDK 1.6,而Android 4.4.4及以后的版本则可以使用OpenJDK。为了安装JDK 1.6,可以通过...

    ubuntu 安装,android4源代码下载编译全过程

    ubuntu 安装,android4源代码下载编译全过程

    android 源码编译环境

    编译环境的搭建,Android源码 开发,基于UBUNTU14.04 / UBUNTU16.10

    Ubuntu Android源码以及内核下载与编译

    在Ubuntu系统下,Android源码的下载和编译是一个复杂的过程,涉及到多个步骤和依赖工具的安装。首先,为了能够顺利进行源码下载,我们需要确保系统环境满足要求。本教程中,使用的系统环境是Ubuntu 14.04 LTS,并且...

    快速搭建android5-1系统源码编译环境.pdf

    推荐使用Ubuntu 14.04或16.04 LTS版本,这两个版本已被广泛验证与Android源码兼容性良好。 3. **安装基本工具**:首先更新系统到最新版,然后安装必备软件包,包括Git、Subversion、Bash、Java、C++编译器等。运行...

    linphone-android:Linphone-Android源代码,在Ubuntu 14.04上编译-ubuntu source code

    编译说明 要为Android构建liblinphone,您必须: 下载具有平台工具和更新至最新版本的工具的Android SDK(至少为API 23),然后在路径中添加“工具”和“平台工具”文件夹。 从Google下载Android ndk(版本r11c或...

    Android 搭建编译环境.docx

    本文主要针对Linux(特别是Ubuntu)和Mac OS操作系统,详细讲解了如何配置一个可以编译Android源码的环境。 首先,值得注意的是,Android的编译并不支持Windows环境,开发者需要使用Linux或Mac OS作为开发平台。在...

    安卓最小编译环境配置

    - **Ubuntu14.04的安装**:在VMware中新建虚拟机,选择“典型”安装方式,然后选择“稍后安装操作系统”。接着,选定Linux系统类型和Ubuntu 64位版本,为虚拟机命名并指定存储位置,确保有20GB以上的可用空间。最后...

    小米mix3内核编译过程.docx

    在这个例子中,我们选择了Ubuntu 14.04版本的操作系统,这个版本自带了Linux 4.4.0-142-generic版本的内核。 二、编译器环境搭建 编译器是编译内核所需的关键工具。在这个例子中,我们使用了来自谷歌的aarch64-...

    MTK6577+Android编译之kernel

    开发环境搭建在虚拟机内,操作系统选用的是Ubuntu 14.04。硬件配置方面,最初的内存配置为H9TP32A4GDMCPR,包含4GB eNAND和512MB LPDDR2;后续进行了硬件升级,改为H9TP32A8JDMCPR,其中包括4GB eNAND和1GB LPDDR2。...

    MTK6577+Android编译之uboot

    在整个过程中,uboot的编译不仅仅是简单的源码编译,还包括了与硬件平台密切相关的定制和适配工作,确保uboot能够正确引导和加载Android系统。此外,uboot的配置和编译还涉及到设备树(Device Tree)和scatter文件...

    源码开发前期的环境准备

    Android系统编译环境目前只支持Linux和Mac OS操作系统,Google推荐使用64位的Ubuntu 14.04。在Windows系统上,你可以通过虚拟机安装Linux,但需注意磁盘空间需求,例如,Android 4.4源码可能需要90GB,而Android 2.3...

    QIHUA-X922平台Android9.0开发手册.pdf

    综上所述,QIHUA-X922平台Android 9.0开发手册为用户提供了一套完整的开发指南,从环境搭建到源码编译再到功能配置和使用,都给出了详细的指导。这对于想要利用该平台进行嵌入式开发的工程师来说是非常宝贵的资源。

Global site tag (gtag.js) - Google Analytics