Linux Mint 15下编译Chromium for Android

来源:互联网 发布:淘宝野模路边真实街拍 编辑:程序博客网 时间:2024/05/21 17:59

(增加了一键脚本在末尾)

首先得看官方文档,大部分操作步骤就是那样,我就不翻译了,只做补充。https://code.google.com/p/chromium/wiki/AndroidBuildInstructions


1. 在执行这步

sudo ./install-build-deps-android.sh
前,修改这个脚本,把
if /usr/bin/lsb_release -r -s | grep -q "12."; then
这行改成
if /usr/bin/lsb_release -r -s | grep -q "15"; then

这里是在判断系统的版本,因为是按Ubuntu写的脚本,所以以12区分了。lsb_release的返回值是15,就是Linux Mint 15,手动改掉让脚本执行Ubuntu 12的路径。(如果是在Ubuntu 13编译,就是相应地把12改成13)

(注:2014年2月20日,发现官方把这里已经改成判断大于等于12了,所以mint符合,可以不再改了)


2, 执行完上面那步的脚本,再继续安装一些依赖库:

sudo apt-get install gcc-4.7-multilib g++-4.7-multilibsudo apt-get install curlsudo apt-get install gperfsudo apt-get install bison

我这样就编译通过了,并且正常运行ContentShell.apk


也许在此之前我已经安装了一些必须的依赖库。如果编译过程

ninja -C out/Release -j10 content_shell_apk

有错误,一般都是python脚本的错。终端会打印出错时的堆栈,按照提示打开出错的python脚本,通常在出错行附近能找出缺少的命令行工具名,apt-get以后再编译就可以了。

错误比较多的话,安装这个可以解决很多问题:

sudo apt-get install gnome-core-devel


如果用Linux mint的SVN checkout遇到老是提示

Password for 'default' GNOME keyring:
可以输入
rm -r ~/.config/mate/keyrings
来解决


编译debug版:

ninja -C out/Debug -j10 content_shell_apk -d stats
安装debug版:

build/android/adb_install_apk.py --apk ContentShell.apk
调试:
build/android/adb_gdb_content_shell

更多调试方法:http://dev.chromium.org/developers/how-tos/debugging-on-android


--------------------------------------

2014年7月10日更新:

Linux Mint 17下的一键安装脚本,需要先修改git信息:

sudo apt-get -f install gitgit clone https://chromium.googlesource.com/chromium/tools/depot_tools.gitexport PATH=`pwd`/depot_tools:"$PATH"git config --global user.name "My Name"git config --global user.email "my-name@chromium.org"git config --global core.autocrlf falsegit config --global core.filemode falsegit config --global branch.autosetuprebase alwaysfetch --nohooks android --nosvn=Truecd srcgit checkout master#gedit build/install-build-deps.sh#ubuntu_codenames="(precise|quantal|raring|saucy|trusty|qiana)"sudo ./build/install-build-deps-android.shgclient sync --nohooksgit checkout origin/mastergit branch -D mastercd ..echo "{ 'GYP_DEFINES': 'OS=android', }" > chromium.gyp_envgclient runhookscd srcninja -C out/Release content_shell_apkbuild/android/adb_install_apk.py --apk ContentShell.apk --release

转载请注明出处:http://blog.csdn.net/hursing

原创粉丝点击