[Android] Ubuntu下Android源码编写翻译

安装Ubuntu

本身使用的windows系统,由此选拔Oracle VM Virtual
Box虚拟机安装Ubuntu系统,Ubuntu系统本人采取的是Ubuntu14.04。
1、下载Oracle VM Virtual Box
https://www.virtualbox.org/wiki/Downloads
依照各自的连串下载对应的本子。
2、下载Ubuntu系统
http://www.ubuntu.com/download/desktop
本身选拔的是 Ubuntu 14.04.4 LTS 64bit。
叁 、怎么样运用Oracle VM Virtual
Box安装Ubuntu,自身就不在做过多的废话了,不精通者请查询有关资料。

布置虚拟机共享文件夹

为了使下载的Android源代码能在Windows中央银行使SourceInsight开辟,所以须求创造Windows共享文件夹,在Ubuntu中让源代码下载在共享文件夹中,可能让Ubuntu共享代码下载的公文夹,在Windows中访问。本文以率先种方法为例阐述。

Paste_Image.png

此设置须要在关闭Ubuntu虚拟机的情事下设置。设置完结未来,打开Ubuntu系统一宣布现没有权力去做客这些共享文件夹,解决方案是把目前用户加到三个叫vboxsf的组中,执行命令

sudo usermod -a -G vboxsf <你的用户名>

挂载的共享文件夹在/media

Paste_Image.png

那里本身使用了SecureCRTSSH远程连接了Ubuntu

sudo apt-get install openssh-server // 安装SSH服务

安装须要的工具

壹 、git版本控制工具

sudo apt-get install git

配置git

git config --global user.email "<你的邮箱>"
git config --global user.name "<你的名字>"

二 、curl,官方一点的说法就是开源的文件传输工具。类似迅雷,可能wget

sudo apt-get install curl

3、安装repo,Android使用Git作为代码管理工科具,开发了Gerrit进行代码审核以便更好的对代码举行集中式管理,还开发了Repo命令行工具,对Git部分命令封装,将百多个Git库有效的展开协会。
新建多个bin目录

mkdir ~/bin

~/bin目录添加到PATH中,编辑.bashrc在终极添加

PATH=$PATH:~/bin

下载repo

curl https://storage-googleapis.lug.ustc.edu.cn/git-repo-downloads/repo > ~/bin/repo

添加可实施权限

chmod a+x ~/bin/repo

动用repo下载Android系统源码

1、cd到共享文件夹
新建3个文本夹存放Android源码

mkdir android && cd android

起始化学工业作目录,暗中同意为master 分支

repo init -u  git://mirrors.ustc.edu.cn/aosp/platform/manifest

伊始化工作目录,并内定分支

repo init -u  git://mirrors.ustc.edu.cn/aosp/platform/manifest -b <branch>

branch可查阅网址
https://source.android.com/source/build-numbers.html\#source-code-tags-and-builds
[必要翻墙]

附上一些较新的系统一分配支

Build Branch Version
M5C14J android-6.0.1_r31 Marshmallow
LMY49J android-5.1.1_r37 Lollipop
KTU84Q android-4.4.4_r2 KitKat

假若想下拉并切换成Android 4.4.4,可以实施一下下令

repo init -u  git://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-4.4.4_r2

假若在伊始化的时候蒙受以下难题

Paste_Image.png

这是多个Virtual
博克斯为了安全禁止了链接的错误,化解方案如下,请在关门虚拟机的情景下开始展览,
Windows 下cmd进去到Virtual Box的装置目录

Paste_Image.png

键入

VBoxManage setextradata <YOURVMNAME> VBoxInternal2/SharedFoldersEnableSymlinksCreate/<YOURSHAREFOLDERNAME> 1

<YOU奥迪Q3VMNAME> = 虚拟机的名字
<YOUTucsonSHAREFOLDE翼虎NAME> = 设置共享的名字
请小心分寸写,例如

Paste_Image.png

Paste_Image.png

Paste_Image.png

设置达成后,查看有没有设置成功

VBoxManage getextradata <YOURVMNAME>  enumerate  

Paste_Image.png

早先化之后,目录上面多了二个.repo隐身文件夹,查看其初阶大小

Paste_Image.png

② 、下拉代码

repo sync 

repo sync 下载最新本地工作文件,同步 repository 中的代码。
能够钦赐须求创新的project ,
假诺不钦赐其余参数,会同步整个全数的连串。如若是率先次运维 repo sync,
则那些命令相当于 git clone,会把 repository
中的全部内容都拷贝到本地。假使不是首先次运维 repo sync, 则也正是更新和活动合并动作,repo sync 会更新 .repo 上边包车型地铁文书。 如若在merge
的历程中冒出争辩, 那需求手动运维 git rebase --continue

防护中途人离开出错,能够采取以下脚本

#!/bin/bash
echo "======start repo sync======"
repo sync
while [ $? == 1 ]; do
  echo "======sync failed, re-sync again======"
  sleep 3
  repo sync -j4
done

repo sync后边能够加个-j<数字>参数来增长速度仓Cook隆,如:

repo sync -j8 // 默认是4

一齐时间仁同一视,笔者大概挂了两四个钟头

创设编写翻译环境

对此Gingerbread
(2.3.x)之后的系统要求六1二人的操作系统,老的体系能够在32为的机械上编写翻译
1、安装JDK
各种Android系统对于JDK的供给是分裂的,当前Android Open Source Project
(AOSP)
master分支上急需Java
8,在Ubuntu上能够安装OpenJDK。
其余分支对于JDK的须要 Java
JDK
:
Java 7: for Lollipop through Marshmallow
Java 6: for Gingerbread through KitKat
Java 5: for Cupcake through Froyo
此间已编写翻译KitKat为例,下载JDK6,由于官网下载必要填写账号音讯,由此这里给出七个百度云的链接
http://pan.baidu.com/s/1nuo3XNj
下载完结后,记得加上到环境变量

② 、 下载编译所需工具
Ubuntu系统版本是14.04的,具体的版本供给安装哪些工具得以查询
https://source.android.com/source/initializing.html

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

正规编写翻译

① 、设置编写翻译环境变量
伊始化环境变量

source build/envsetup.sh

或者

. build/envsetup.sh

二 、选取编写翻译目的

lunch aosp_arm-eng

种类表达

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

3、使用ccache
加速编写翻译的事物,建议大小 50-100G

export USE_CCACHE=1
export CCACHE_DIR=/<path_of_your_choice>/.ccache
prebuilts/misc/linux-x86/ccache/ccache -M 50G

4、编译

make -j<你CPU的核心数乘以2> 如:make -j8

透过短时间的编写翻译时间

五 、模拟器运营
直白在支配台运转,在编译的工程中此命令或活动添加到环境变量中

emulator

模拟器运营起来后,即可看出刚编写翻译好的image

合法编写翻译教程
https://source.android.com/source/index.html
[需翻墙]

相关文章