MS Win10 1909

mozilla-build (截止到 2020.2.23 最新版本)

source code (同上)

rust 1.41.0 x86_64

vs 2019

至少 40GB 空间

本文目的在于激发屏幕面前的您的兴趣爱好,进而进一步学习计算机。

未经许可请勿转载本文。

环境 & 目的 & 声明
August

名词解释:

  • 构建工具 —— MozillaBuild
  • 神器构建模式 —— Artifact Mode

警告:

  • 请不要修改源码目录下的 .hg 文件夹 或 .git 文件夹,神器构建模式需要他们!
  • 上传源码至远端代码托管平台请注意,如果你从非 Mercurial  库拉取代码,那么它将不支持神器构建模式
  • 如果你想使用 Visual Studio 作为开发用的IDE,那么请转移到文档末尾处,那有你想要的东西。

教程缺陷:

  • 无法脱离 Mercurial  库。

前言:

关于编译火狐,官方提供了极其 详尽 的文档!


按照文档,我们会这样做:(请允许我重复)

如果你想轻松愉快,那么请保持默认安装位置
  • 安装 VS2019
    • 使用C ++进行桌面开发
    • 使用C ++开发游戏
    • Windows 10 SDK(至少版本10.0.17134.0
    • 用于v142构建工具(x86和x64)的C ++ ATL
  • 安装 MozillaBuild
    • 在桌面上创建 start-shell.bat will make your life easier !
  • 获取 Source Code
  • 构建 Firefox

嘛、大致步骤如上,如果你运气不差并且按照官方文档的要求进行操作。那么你会成功的。


下面说一下可能会出现的问题:

A

hg clone https://hg.mozilla.org/mozilla-central

请使用最尖端的破墙工具,以持续下载近 3GB 以上的数据


B

./mach bootstrap
Please choose the version of Firefox you want to build:
1. Firefox for Desktop Artifact Mode
2. Firefox for Desktop
3. GeckoView/Firefox for Android Artifact Mode
4. GeckoView/Firefox for Android

在此步,如果您急躁、渴望胜利。请选择 1,并且保持尖端梯子持续开启。当完成时它会提示你在源码根目录下创建一个配置文件,曰 mozconfig 。请在其中放入如下文本。然后执行 mach build,并且继续保持尖端梯子的开启。 (在此期间如果提示您 Yn 选项,一律 Y)

# Automatically download and use compiled C++ components:
ac_add_options --enable-artifact-builds

正文:

在此处,请你务必按照文档使用 hg 克隆源码库bootstrap 仅适用于源代码的Mercuial存储库!!!

且仅针对 Win x86_64 平台进行构建。

不听老人言,吃亏在眼前

请确保 mozconfig 内空无一物。(针对小白)

在您尝试完神器构建 (Artifact Mode) 后。您可能觉得自己长大了、翅膀硬了,继而试图尝试使用非神器构建模式。那么请往下看:

Please choose the version of Firefox you want to build:
1. Firefox for Desktop Artifact Mode
2. Firefox for Desktop
3. GeckoView/Firefox for Android Artifact Mode
4. GeckoView/Firefox for Android

在执行完 mach bootstrap 后,出现了分支选项,如上。请你选择 2 。

不出意外您会得到关于 rust 的错误。解决方法非常简单,下载并安装到 C:/rust 目录下。

https://static.rust-lang.org/dist/rust-1.41.0-x86_64-pc-windows-msvc.msi

安装后,编辑 start-shell.bat ,找到 IF NOT DEFINED MOZ_NO_RESET_PATH ( 这行。修改 SET PATH 如图所示。

start-shell.bat
start-shell.bat
如果提示您rust出现错误,那么不出意外,这篇文章将帮您:sof

然后重新运行 start-shell.bat ,重新执行 mach bootstrap ,等待成功。(在此期间如果提示您 Yn 选项,一律 Y)

最后到了喜闻乐见的编译环节:重新打开 shell,导航到源码根目录,执行 mach build

这时候你可以放心把他放在后台进行编译了~

done

杂谈

除了官方构建方式,你还可以通过下载 tar 源码压缩包,配合 mozilla-build 工具,使用 mach build 指令进行构建。该方法本博主尚未成功。。。(愧疚

此方法需要你手动配置所有依赖工具(安装、设置 PATH 等。


还有一种野鸡构建方式,通过下载 tar 源码,导航到源码目录,执行 mach bootstrap

  • 选择 1 (神器加速构建)
  • 然后选择 Git 或 Hg ( Mercurial 
  • 然后构建工具会自动下载源码,再次期间它会让你确认源码存放位置。
  • 待源码下载完毕,使用构建工具导航到源码目录,执行 mach build

这种野鸡构建方式效果如同官方文档。(仅作为记录)


关于 Visual Studio :

如果你使用神器构建模式,且根据官方文档使用 Visual Studio 作为 IDE 的话。那么你会得到错误:

在你使用 mach build-backend --backend=VisualStudio 生成sln 解决方案后,打开它你会发现 Visual Studio 内找不到代码。

造成这现象的原因是你需要从头构建 C/C++ 代码。(换句话说,你需要使用非神器构建模式)

请移步 正文


致谢:


August

Android 开发者、影视后期内容(包装)制作者、Unity 2D游戏开发者

0 条评论

发表评论

电子邮件地址不会被公开。