chromium for android的编译--完整版

屈俊远
2023-12-01

1、准备工作

64位的ubuntu系统,10系列或者12系列,32位的很难成功;google 编译指南中说是 Ubuntu 10.04 LTS,我开始安装的也是这个版本,后来升级到了Ubuntu 12.04.3 LTS编译一样成功了
如何查看你的系统是否是64位:
   使用命令uname -m后有这样的结果:x86_64,如果不是那就是32位了;

2、仔细阅读以下指南

这个内容中,要注意这个(如果编译过程中出现体现头文件(*.h)不存在,可用这招):
      
Comment by vils...@gmail.com, Oct 10, 2011
Modified prereqs for Ubuntu 10.04 LTS:
sudo apt-get install bison fakeroot flex g++ g++-multilib gperf libapache2-mod-php5 libasound2-dev libbz2-dev libcairo2-dev libdbus-glib-1-dev libgconf2-dev libgl1-mesa-dev libglu1-mesa-dev libglib2.0-dev libgtk2.0-dev libjpeg62-dev libnspr4-dev libnss3-dev libpam0g-dev libsqlite3-dev libxslt1-dev libxss-dev mesa-common-dev ttf-mscorefonts-installer patch perl pkg-config python python-dev rpm subversion libcups2-dev libgnome-keyring-dev libcurl4-gnutls-dev libelf-dev ttf-indic-fonts



反复阅读这三个指南,从源码获取到生成未签名的apk,这些指南非常重要!

3、签名和安装

通过 android编译指南编译生成后的apk是未签名,不能安装在android系统上(据说模拟器可以,我没测试过);
下面具体来说说如何签名
1、检查两个工具keytool和jarsigner,如果你能够正确编译,这两个工具肯定是有的
2、拷贝ContentShell-unsigned.apk到单独目录下,这个文件一般在your chromium src dir/out/Release/content_shell_apk下,我一般把它拷贝到用户目录下
3、用如下命令生成签名文件
$ keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -validity 10000

其中my-release-key.keystore是你的key文件名,alias_name是别名,下面要用到,这两个你可以自己取名,1000代表apk的有效天数;输入这个命令后,系统会提示你输入相关信息,按照提示输入即可,记住输入的密码
4、签名,用类似命令:
jarsigner -verbose -keystore my-release-key.keystore "$1" alias_name

my-release-key.keystore就是上面keytool生成的文件名,$1是你要签名的apk,这里是ContentShell-unsigned.apk,alias_name是keytool命令中的alias_name,记住一定要一致;
输入jarsigner命令后,会提示你输入密码,正确后就会生成签名的apk

5、签名完后,就可以按照你喜欢的方式把apk装入android系统,这个apk对系统版本有一定的要求,具体我没研究过;我在2.1上安装不成功,在4.0上成功了;
成功安装后找到content shell这个程序,你就可以冲浪了,这个界面比较简单,但能用。

到此为止,你可以大胆的去研究chromium的代码结构了。祝顺利!...





 类似资料: