Ungoogled Chromium127 编译指南 MacOS篇(八)- 开始编译

1. 引言

完成了所有依赖包的安装后,我们终于来到了最关键的编译阶段。在开始编译之前,有一些重要的配置信息需要了解。本文将指导您完成整个编译过程。

2. 签名相关说明

虽然在我们的测试编译中不需要进行签名操作,但了解官方的签名要求仍然很有帮助:

2.1 签名环境变量

如果需要签名和公证,需要设置以下环境变量:

复制代码
MACOS_CERTIFICATE_NAME       # Developer ID 证书全名
PROD_MACOS_NOTARIZATION_APPLE_ID  # Apple 开发者账号邮箱
PROD_MACOS_NOTARIZATION_TEAM_ID   # Apple 开发者团队 ID
PROD_MACOS_NOTARIZATION_PWD       # App 专用密码

2.2 签名代码部分

在正式发布版本中,build.sh 会包含类似以下的签名代码:

复制代码
# Sign the binary
codesign --sign "$MACOS_CERTIFICATE_NAME" --force --timestamp \
    --identifier io.ungoogled-software.ungoogled-chromium \
    --options restrict,library,runtime,kill \
    --entitlements $_root_dir/entitlements/app-entitlements.plist \
    out/Default/Chromium.app

# Verify the binary signature
codesign --verify --deep --verbose=4 out/Default/Chromium.app

3. 开始编译

3.1 准备工作

复制代码
# 确保位于项目目录
cd ungoogled-chromium-macos

# 确保 Xcode 已打开
# 这一步很重要,因为编译过程需要访问 Xcode 的开发者工具

3.2 运行编译脚本

复制代码
# 执行编译脚本
./build.sh

3.3 编译过程说明

  1. 脚本会首先下载 Chromium 源码
  2. 应用 Ungoogled Chromium 的补丁
  3. 配置构建参数
  4. 开始实际的编译过程

4. 注意事项

4.1 编译时间

  • 编译时间较长,通常需要几个小时
  • 具体时间取决于您的硬件配置
  • 建议使用性能模式并连接电源适配器

4.2 可能的问题处理

如果编译失败,需要进行以下清理:

复制代码
# 如果下载失败,删除下载缓存
rm -rf build/downloads_cache

# 如果编译失败,删除源码目录
rm -rf build/src

4.3 系统资源

  • 确保有足够的磁盘空间(至少 40GB)
  • 保持系统有足够的可用内存
  • 避免在编译过程中运行其他重资源程序

5. 编译输出

编译成功后,将在 build/ 目录下生成 .dmg 文件,这就是我们编译好的 Ungoogled Chromium 浏览器安装包。

6. 后续步骤

下一篇文章中,我们将介绍如何验证编译结果,并对编译好的浏览器进行简单的功能测试。

7. 总结

编译过程虽然耗时,但只要正确配置了环境并遵循步骤,通常都能顺利完成。请耐心等待编译完成,避免中断编译过程。如果遇到问题,可以参考前面提到的清理步骤重新开始。


注意:本指南采用测试目的的编译方式,没有进行签名操作。如果您需要发布版本,请参考官方文档中的签名说明进行相应配置。

相关推荐
ToDetect12 小时前
主流Chrome、Edge、Firefox 浏览器 User-Agent 解析完整操作指南
chrome·todetect·浏览器指纹检测·user-agent 解析
守城小轩15 小时前
Chromium 140 编译指南 macOS 篇:基础环境准备(一)
chrome·macos·chrome devtools·指纹浏览器·浏览器开发·超级浏览器
二哈喇子!1 天前
在 Chrome 里通过 ZeroOmega 插件,接入亮数据的数据中心代理 IP
chrome·ai·代理ip·zeroomega插件·亮数据的数据中心代理方案
代码的乐趣1 天前
支持selenium的chrome driver更新到142.0.7444.175
chrome·python·selenium
Yeats_Liao1 天前
CANN Samples(三):入门示例ACLHelloWorld
前端·chrome·microsoft
守城小轩2 天前
基于Chrome140的X账号自动化(关键词浏览)——脚本撰写(二)
自动化·chrome devtools·rpa·浏览器自动化
℡終嚸♂6802 天前
红帽系统(RHEL 8/9)安装与配置Nginx全攻略
运维·chrome·nginx
nvd112 天前
niri 音频图形界面工具
前端·chrome·音视频
dingzd952 天前
链上信用体系如何建立
web3·互联网·facebook·tiktok·instagram·指纹浏览器·clonbrowser
天渺工作室3 天前
Chrome浏览器自带翻译的诡异Bug:ID翻译后竟然变化了
前端·chrome