chromium for android 编译

来源:互联网 发布:洛克人网络争霸战01 编辑:程序博客网 时间:2024/05/21 19:27

中文说明:http://www.jianshu.com/p/5fce18cbe016

01 软硬件环境

硬件:thinkpad x220 8G i5 1T 7200转硬盘。
系统:UbuntuX64 1504桌面版本。
vpn:腾讯cvm 多伦多一区 操作系统 CentOS 7.2 64位 CPU 1核 内存 2GB 系统盘 20GB(云硬盘) 公网带宽 1Mbps,搭建vpn。

02 安装必备软件,配置必要环境

02.01 安装python2.7.9

02.02 安装git。

sudo apt-get install git

02.03 下载depot_tools。

cd $HOMEgit clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

02.4 设置环境变量。

export PATH=$PATH:$HOME/depot_tools# 或者 vim ~/.bashrcexport PATH=$PATH:$HOME/depot_tools

02.05 设置git变量

git config --global user.name "username"git config --global user.email "username@gmail.com"git config --global core.autocrlf falsegit config --global core.filemode falsegit config --global color.ui true

02.06 需要安装的软件:

安装java jdk,并且设置java环境变量

vim /etc/profile....sudo update-alternatives --config javac sudo update-alternatives --config java sudo update-alternatives --config javaws sudo update-alternatives --config javap sudo update-alternatives --config jar sudo update-alternatives --config jarsigner
# c++arm编译器g++-arm-linux-gnueabihf# 使用clang编译clanggperfgnu++c++11sudo apt-get install gcc-4.9-multilibsudo apt-get install g++-4.9-multilibsudo apt-get install c++-4.9-multilibsudo apt-get install aptitudeaptitude install libc6:i386# 好像这个比较重要sudo apt-get install linux-libc-dev:i386sudo apt-get install zlib1g:i386sudo apt-get install lib32z1sudo apt-get install apt-filesudo apt-file updatesudo apt-get install lib32z1 libx32z1 zlib1gsudo apt-get install bison

03 下载源代码

03.01 连接vpn,必须的。

03.02 创建$HOME/chromium目录。

mkdir -p $HOME/chromium && cd $HOME/chromium

03.03 下载chromium源码

fetch --nohooks android# 如果fetch 方式失败了,并且已经存在$HOME/chromium/.gclient,可以使用gclient sync同步代码# 或者删除$HOME/chromium/.gclient后,继续使用 fetch --nohooks android 获取代码gclient synccd $HOME/chromium/src# 上面获取的代码是最新版本,并不是稳定版本。# 一般需要切换到稳定版本的分支# 切换到release分支,参考:http://www.chromium.org/developers/how-tos/get-the-code/working-with-release-branches# 使用 git fetch --tags 获取所有tag标签到本地仓库git fetch --tags # 如果此时直接使用 git fetch --all,并不能把远程仓库的所有分支都拉到本地仓库# git fetch --all# git branch -a  # 本地只有有限的几个分支# 在 http://www.chromium.org/developers/calendar 找到稳定版本的tag号,切换出本地分支git checkout -b b2785 53.0.2785.134# 切换到一个分支后,再运行git fetch --all,够得所有的本地分支。git fetch --all# git branch -a  # 本地出现所有分支 head# 后面可以切换到任何分支,本地参考会出现所有分支git checkout -b 2785 branch-heads/2785./build/install-build-deps.shgcient sync --nohook --with_branch_heads --with_tags# 注意:这里是[.空格build/*]export GYP_GENERATORS=ninja. build/android/envsetup.sh~/chromium$ echo "{ 'GYP_DEFINES': 'OS=android', }" > chromium.gyp_env# 生成out/下面必要资源文件android_gypgclient runhooks# 生成对应的apk版本ninja -C out/Release chrome_public_apkninja -C out/Release content_shell_apkninja -C out/Release android_webview_apk# 设置网络sudo vim /etc/network/interfacesauto wlan0iface wlan0 inet staticaddress 192.168.1.151gateway 192.168.1.1netmask 255.255.255.0network 192.168.1.0broadcast 192.168.1.255sudo vim /etc/resolv.conf#nameserver 127.0.0.1nameserver 202.96.209.133nameserver 202.96.209.5nameserver 8.8.8.8nameserver 8.8.4.4
0 0
原创粉丝点击