unbuntu下载编译chromium
第一步:配置安装depot_tools
sudo apt install git
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH=depot_tools path:$PATH:
第二步:下载源码
方法1:
时间长
fetch chromium
方法2:
只下载最新的代码,没有历史记录
fetch --nohooks --no-history chromium
注:如果在下载过程中发生了异常(比较常见的是断网,因为vpn),可以在/chromium目录下执行:
gclient sync --nohooks --no-history
有时可以继续同步,有时不行
方法3:
快速下载代码包(tarball)
http://chromium-browser-source.commondatastorage.googleapis.com/chromium_tarball.html
方法4:
分支的下载请参考
https://www.chromium.org/developers/how-tos/get-the-code/working-with-release-branches
方法5:
# 获得所有发布tag的信息。
git fetch --tags
# 根据37.0.2062.103版本建立一个你自己的分支
git checkout -b your_release_branch 37.0.2062.103
// 同步所有相关工程代码
gclient sync --with_branch_heads --jobs 16
方法6:
.gclient
[plain] view plain copy
1. solutions = [
2. {
3. "managed": True,
4. "name": "src",
5. "url": "https://chromium.googlesource.com/chromium/src.git@41.0.2272.76",
6. "custom_deps": {
7. "src/content/test/data/layout_tests/LayoutTests": None,
8. "src/chrome/tools/test/reference_build/chrome_win": None,
9. "src/chrome_frame/tools/test/reference_build/chrome_win":None,
10. "src/chrome/tools/test/reference_build/chrome_linux":None,
11. "src/chrome/tools/test/reference_build/chrome_mac": None,
12. "src/third_party/hunspell_dictionaries": None,
13. },
14. "deps_file": ".DEPS.git",
15. "safesync_url": "",
16. },
17. ]
18. target_os = ['android']
然后 gclient sync --with_branch_heads --jobs 16
第三步:编译
首先,安装依赖库
$ cd src
$ ./build/install-build-deps.sh --no-chromeos-fonts
后面的参数“–no-chromeos-fonts”的作用是跳过字体的安装,因为我发现总是安装失败。而且这个过程也要用到vpn,否则更新无法成功。
After a recent update, ttf-mscorefonts-installer prompted me to accept its licenseagreement.
Page Down到底部,Tab 到ok,然后Enter
然后:
gclient runhooks
runhooks是在同步完代码之后执行的。
根据DEPS的文件的描述,执行一些获取代码之后的工作,其中包括生成平台可编译的工程。
然后:
确保depot_tools工具在你的PATH变量里,并检查一下ninja工具的是否是depot_tools提供的,方法是用which命令,例如:
$which ninja
$XX/ninja
可以看出我的环境是正确的。
再然后,执行如下命令:
sudo apt install multimon
然后:安装gn
gn gen out/Release
ninja -C out/Release chrome
然后:生成ninja
$ cd ./chromium/src
$gn gen out/default
先用gn gen指定在out/目录里面生成ninja。
然后:编译
$ninja -C out/default
其中,chromium/src是我的源码目录。
需要说明的是这种方式编译出的是debug版的。
编译完成后,你可以按如下方式启动:
$cd ./chromium/src/out/default
$./chrome
如果你启动后遇到如下错误
Running without the SUID sandbox! See https://chromium.googlesource.com/chromium/src/+/master/docs/linux_suid_sandbox_development.md for more information on developing with the sandbox on.
则需要设置一环境变量:
$ export CHROME_DEVEL_SANDBOX=/usr/local/sbin/chrome-devel-sandbox
unbuntu下载编译chromium相关推荐
- windows下载编译chromium源码
前言 chromium 源码的下载编译,真的就是如各位前辈说的一样,参考再完整的教程,还是会遇到各种各样的问题.因为每个人的开发环境是不一样的,网络环境也不一样. 一路参考各路大神的教程开始踩坑填坑的 ...
- Window使用代理下载编译Chromium(Visual Stadio 2019版)
下载源码 参考Checking out and Building Chromium for Windows (googlesource.com)官方流程. 安装visual studio与相应开发工具 ...
- 在Windows10下下载编译历史版本chromium
Windows10的版本是10.0.18363.1082, chromium是以2016年的53.0.2785.134版本源代码为例. 一.准备 1.安装VS2015 安装时记得编程语言勾选上Visu ...
- windows下编译chromium浏览器的15个流程整理
阅读目录 编译chromium 15个编译流程: 参考: 注意: 回到顶部 编译chromium 系统为windows, 国内在windows上编译chromium的资料比较少, 我这篇文章只能作为参 ...
- fuchsia学习_下载编译遇到问题和demo运行
下载编译,官网 https://fuchsia.dev $ curl -s "https://fuchsia.googlesource.com/fuchsia/+/master/script ...
- Android编译chromium
一.申请云服务器 在Windows或者Mac下编译Android客户端是不支持的,官方推荐的是使用Ubuntu来进行编译,因此我们的编译采用的是Ubuntu服务器,事实证明镜像必须是ubuntu,如果 ...
- ubuntu20.04修改编译chromium源码实战
首先,利用vmware搭建ubuntu20.04的虚拟机 由于chromium的源码比较大,在git的时候需要分配数据交换的大小,如果小了就下不下来.所以最好给这台虚拟机分配12G内存以上.存储100 ...
- Qt嵌入浏览器开发——下载编译
首先明确一下动机:为什么要用Qt自己实现一个浏览器? 简而言之,就是希望实现一个介于B/S和C/S之间的混合架构,以适应一些前端展示信息需要频繁更新的生产系统.这种混合架构的优势在于: 相较于C/S架 ...
- 编译Chromium for Android
编译Mingw-w64失利,打算编译一下Chromium玩一下 首先需要在Linux平台上编译 前置工具 git python2.7 **良好的网络条件** 一.安装depot_tools git c ...
- 为curl 、git、go语言、wget、repo设置代理,解决ubuntu 18.04编译chromium os问题
为CURL设置proxy 设置代理的方式搜索了一下挺多的,我测试了这两种方式,这两种方式在ubuntu 18.04上可以运行. 有两种方法,第一通过声明环境变量: export http_proxy= ...
最新文章
- NVIDIA TensorRT:可编程推理加速器
- Invoker 2019CCPC秦皇岛站I题 简单DP
- 在CentOS 7中安装与配置Tomcat-8方法
- 算法----选择排序(select sort)
- 股票实时行情数据大全
- 【Gans入门】Pytorch实现Gans代码详解【70+代码】
- 【数据结构与算法】之深入解析“二叉树展开为链表”的求解思路与算法示例
- 成功解决tensorflow.keras: AttributeError: ‘str‘ object has no attribute ‘decode‘
- 加密扩展库 php,如何利Mcrypt扩展库进行加密和解密_php
- linux apache mod_jk,Linux上安装Apache,安装mod_jk,相关配置
- 贷后模块之催收行为综合评分卡
- System.load 和 System.loadLibrary详解
- particle filtering---粒子滤波(讲的很通俗易懂)
- MAC微软远程桌面RDC不能全屏的的解决方法
- 图层重命名快捷键_实际操作,在PS中如何批量给图层重命名并导出
- PSpice 使用中的若干问题
- SpringBoot父子工程集成Jenkins部署项目问题合集
- 荣耀v40和华为Nova8pro哪个好 华为Nova8pro和荣耀v40的区别
- cocosbuilder创建工程
- web前段网图分类规划
热门文章
- c++_2: 类的定义
- 编程算法 - 最好牛线(Best Cow Line) 代码(C)
- Selenium WebDriver高级应用
- 基于alphalens对qlib的alpha158做单因子分析
- 什么是带内管理 带外管理?
- 让Win7做DHCP服务器
- java 拦截器 排除_java – 如何将拦截器添加到除一个或两个以外的所有API请求?...
- 最伟大IT人物10强出炉 乔布斯第一盖茨第三
- should be described in NUMA config 和 CPU feature cmt not found
- 技术总监面试有什么技巧