编译 Chromium 留念

编译 Chromium 留念

💡 原文中文,约6300字,阅读约需15分钟。
📝

内容提要

本文讲述了编译Chromium的过程,作者遇到了磁盘空间不足和代理设置的问题,最终成功编译,并分享了编译后的截图。

🔎

延伸解读

磁盘格式选择:exFAT 的陷阱

作者使用 exFAT 格式的移动硬盘同步 Chromium 源码,结果磁盘占用异常膨胀至 1TB,导致编译报错。后改为 APFS 格式重新同步,问题消失。这提示在 macOS 上进行大型项目编译时,应优先选用 APFS 等原生文件系统,避免因小文件过多造成空间浪费和潜在错误。

代理转换:socat 的巧妙应用

由于 gclient 仅支持明文 HTTP 代理,而作者自建的是安全 HTTP 代理,直接使用会被阻断。通过 socat 将 TLS 代理转换为本地明文代理,解决了工具链的代理兼容问题。这一方法对需要同步境外代码的开发者具有参考价值,但需注意代理认证信息的配置。

编译耗时与硬件考量

在 2020 款 Intel i7 四核八线程、16GB 内存的 Mac 上,完整编译 Chromium 耗时 18.5 小时,期间 CPU 满载、设备发热明显。这表明编译 Chromium 对硬件要求较高,尤其是 CPU 和散热。若需频繁编译,建议使用性能更强的设备或开启 ccache 缓存以缩短后续编译时间。

磁盘空间规划建议

作者最终统计整个编译过程消耗磁盘 142GB,而源码同步后即占用约 80GB。官方文档未明确 Mac 平台的磁盘需求,实际经验表明至少需要 1TB 的可用空间才能从容应对。计划编译 Chromium 的读者应提前准备充足的高速存储,并预留额外空间用于中间文件和缓存。

❓

Q&A

编译Chromium需要多少磁盘空间?

编译Chromium建议购买至少1TB的硬盘,因为整个过程消耗了142GB的磁盘空间。

在编译Chromium时遇到了哪些问题?

作者遇到了磁盘空间不足和代理设置的问题,使用exFAT格式的硬盘导致同步出现问题。

如何解决Chromium编译中的代理问题?

作者使用socat工具将安全HTTP代理转换为明文HTTP代理,以便gclient工具使用。

编译Chromium的过程大约需要多长时间?

编译过程耗时约18.5小时。

为什么选择将硬盘格式化为APFS?

因为exFAT文件系统在小文件过多时可能浪费磁盘空间,格式化为APFS后同步和编译没有问题。

编译Chromium的过程中使用了哪些工具?

使用了depot_tools、gclient工具和socat工具来同步代码和设置代理。

🏷️

标签

➡️

继续阅读