当前位置: 首页 > news >正文

5.Chromium指纹浏览器开发教程之编译发布版本

编译发布版本

调试版本编译出来的Chromium浏览器运行速度是非常缓慢的,因此其中存在着大量的调试符号。如果要编译发布版本,只需要更改is_debug参数即可,另外,如果不在GN构建参数的时候指定Google API密钥,会导致Chromium的部分功能无法使用,因此推荐在发布版中设置此类参数。

本书编译发布版本使用的GN构建参数如下所示:

is_debug=falseenable_nacl=falsetarget_cpu="x86"is_component_build=falseproprietary_codecs=trueffmpeg_branding="Chrome"is_official_build=truegoogle_api_key="xxx"google_default_client_id="xxx"google_default_client_secret="xxx"

申请谷歌API,需要到网址https://cloud.google.com/console,选择左侧的APIs & Services选项当中的Credentials,如图1-27所示。

之后在当前页面中选择CREATE CREDENTIALS创建凭证,类型为API密钥,这里生成的字符即为google_api_key所需要的值。继续创建凭证,类型为“OAuth client ID”,应用类型选择“Desktop app”,其中生成的客户端ID为google_default_client_id的值,二生成的客户端密钥为google_default_client_secret需要的值。

使用上述参数编译出来的Chromium浏览器即发布版本,运行速度和正常Chrome浏览器并无差异。如果要把编译出来的浏览器当做安装包发布给其他人使用,在编译可执行文件的时候,可以在命令行键入以下命令:

>autoninja -C out/release mini_installer

这个时候,就会在out/release目录下生成mini_installer可执行文件,运行后会自动安装发布版的chrome.exe。

可能的编译错误

在编译过程中可能会出现以下错误:

src\mojo\public\tools\bindings\generators\mojom_ts_generator.py",in _GetJsModuleImportsos.path.relpath(File "<frozen ntpath>", line 766, in relpathValueError: path is on mount '\\\\tab_group_types.mojom-webui.js', start on mount 'd:'...

要修复该错误,需要到以下Chromium文件当中进行修改:

src\mojo\public\tools\bindings\generators\mojom_ts_generator.py

修改内容如下所示:

  # Existing code in that functionpath = module.metadata.get('webui_module_path')# Add the below linesif path == '':path = '/'if path is None or path == '/':return path

接着保存文件,并且继续进行Chromium浏览器编译即可。

http://www.dtcms.com/a/142292.html

相关文章:

  • 前沿篇|CAN XL 与 TSN 深度解读
  • 从零开始学A2A四:A2A 协议的高级应用与优化
  • Rocky8 升级 Python 3.9.20 并部署 Airflow 2.10.5
  • 2025年03月中国电子学会青少年软件编程(Python)等级考试试卷(六级)真题
  • VASP 6.4.1 Ubuntu系统编译安装手册
  • 刘鑫炜履新共工新闻社新媒体研究院院长,赋能媒体融合新征程
  • 【Linux】【阿里云服务器】【树莓派】学习守护进程编程、gdb调试原理和内网穿透信息
  • 接口自动化测试(二)
  • 【零基础】基于 MATLAB + Gurobi + YALMIP 的优化建模与求解全流程指南
  • 大模型时代:AI应用的变革与挑战
  • Linux系统之----冯诺依曼结构
  • AI编程方法第五弹:测试很重要
  • 智谱AI大模型免费开放:开启AI创作新时代
  • docker镜像被覆盖了怎么办?通过sha256重新上传镜像
  • 第 7 期:DDPM 采样提速方案:从 DDPM 到 DDIM
  • 【论文阅读20】-CNN-Attention-BiGRU-滑坡预测(2025-03)
  • zset.
  • 《软件设计师》复习笔记(4.2)——关系代数、函数依赖、范式
  • 容性串扰-信号与电源完整性分析
  • 公务员行测之速算分数记忆检验-无答案版本
  • 5.常用控件-QWidget|enabled|geometry|window frame(C++)
  • nuxt3路由切换页面出不来,刷新可以
  • C++17 信号量模拟实现
  • Json 在线格式化 - 加菲工具
  • AUTOSAR图解==>AUTOSAR_SWS_E2ETransformer
  • Sigma-Delta ADC(ΣΔ-ADC)中的量化器简介
  • YOLOv11改进:基于小波卷积WTConv的大感受野目标检测网络-
  • 2048小游戏C++板来啦!
  • 3.Chromium指纹浏览器开发教程之chromium119版本源码拉取
  • Python实例题:Python批量获取王者荣耀皮肤