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. 总结

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


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

相关推荐
dringlestry8 小时前
Chrome 调试器第二次连接不上?
chrome·进程·端口·chrome调试
mysusheng8 小时前
Chrome 浏览器的很多扩展不能用了
前端·chrome
可问 可问春风14 小时前
Linux 找回 Root 密码(多发行版本)
linux·运维·chrome
翻滚吧键盘17 小时前
查看debian的版本信息
运维·chrome·debian
DLoading00120 小时前
个人常用的chrome好用插件
chrome·插件
草明21 小时前
使用 Chrome Flags 设置(适用于 HTTP 站点开发)
前端·chrome·http
守城小轩2 天前
Chrome 扩展开发 API实战:Proxy(七)
chrome·chrome插件·浏览器插件·浏览器开发
老K(郭云开)2 天前
最新版Chrome浏览器加载ActiveX控件技术--allWebPlugin中间件一键部署浏览器扩展
前端·javascript·chrome·中间件·edge
老K(郭云开)2 天前
allWebPlugin中间件自动适应Web系统多层iframe嵌套
前端·javascript·chrome·中间件
驯龙高手_追风3 天前
谷歌Chrome或微软Edge浏览器修改网页任意内容
前端·chrome·edge