From d20515aeaff5b5e28aa117f21d02f2bcdba6d2d6 Mon Sep 17 00:00:00 2001 From: Cong Zhang <13283869+congzhangzh@users.noreply.github.com> Date: Thu, 28 Mar 2024 22:10:49 +0800 Subject: [PATCH] doc: remove mold use on mac for speeding up build MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Vinicius Lourenço <12551007+H4ad@users.noreply.github.com> PR-URL: https://github.com/nodejs/node/pull/52252 Reviewed-By: Vinícius Lourenço Claro Cardoso Reviewed-By: Yagiz Nizipli Reviewed-By: Moshe Atlow --- BUILDING.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/BUILDING.md b/BUILDING.md index 0b0362e8bf3749..3a0c2698425905 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -546,11 +546,14 @@ If you encounter any difficulties, consider disabling `mold` as a troubleshooting step. If you plan to frequently rebuild Node.js, especially if using several -branches, installing `ccache` and `mold` can help to greatly reduce build +branches, installing `ccache` can help to greatly reduce build times. Set up with: On GNU/Linux: +Tips: `mold` can speed up the link process, which can't be cached, you may +need to install the latest version but not the apt version. + ```bash sudo apt install ccache mold # for Debian/Ubuntu, included in most Linux distros export CC="ccache gcc" # add to your .profile @@ -558,13 +561,17 @@ export CXX="ccache g++" # add to your .profile export LDFLAGS="-fuse-ld=mold" # add to your .profile ``` +Refs: + +1. +2. + On macOS: ```bash -brew install ccache mold # see https://brew.sh +brew install ccache # see https://brew.sh export CC="ccache cc" # add to ~/.zshrc or other shell config file export CXX="ccache c++" # add to ~/.zshrc or other shell config file -export LDFLAGS="-fuse-ld=mold" # add to ~/.zshrc or other shell config file ``` This will allow for near-instantaneous rebuilds when switching branches back @@ -582,11 +589,6 @@ the specified directory. The JS debugger of Visual Studio Code supports this configuration since the November 2020 version and allows for setting breakpoints. -Refs: - -1. -2. - #### Troubleshooting Unix and macOS builds Stale builds can sometimes result in `file not found` errors while building.