温馨提示×

ubuntu如何编译nodejs源码

小樊
56
2026-09-09 20:40:01
栏目: 编程语言

下面以 Ubuntu 为例,说明如何从源码编译 Node.js。


一、准备编译环境

1. 更新系统

sudo apt update
sudo apt upgrade -y

2. 安装编译依赖

Node.js 源码编译需要以下工具:

sudo apt install -y \
  build-essential \
  python3 \
  python3-pip \
  libssl-dev \
  git \
  curl

Node.js 现在使用 Python 3(不再需要 Python 2)


二、获取 Node.js 源码

方式一:从官方仓库克隆(推荐)

git clone https://github.com/nodejs/node.git
cd node

查看版本分支(例如 v20.x):

git checkout v20.11.1

方式二:下载源码包

curl -O https://nodejs.org/dist/v20.11.1/node-v20.11.1.tar.gz
tar -xzf node-v20.11.1.tar.gz
cd node-v20.11.1

三、配置编译选项

./configure

常用选项示例:

./configure --prefix=/usr/local/node20

可选参数:

  • --prefix=PATH:安装路径
  • --with-intl=none:禁用国际化(减小体积)
  • --shared-openssl:使用系统 OpenSSL

四、编译 Node.js

使用多核加速

make -j$(nproc)

编译时间较长(几分钟到几十分钟,取决于机器性能)


五、安装 Node.js

sudo make install

如果使用了 --prefix:

sudo make install

安装完成后验证:

node -v
npm -v

六、常见问题

1. 编译报错:Python not found

确保:

python3 --version

并设置:

export PYTHON=python3

2. 内存不足(OOM)

可减少并行数:

make -j2

3. 只想编译某个版本

推荐使用 nvm(非源码编译,但更方便):

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
nvm install 20

七、总结步骤(快速版)

sudo apt update
sudo apt install -y build-essential python3 libssl-dev git
git clone https://github.com/nodejs/node.git
cd node
git checkout v20.11.1
./configure
make -j$(nproc)
sudo make install

如果你是想:

  • 交叉编译
  • 静态编译
  • 修改 Node.js 源码
  • 在 Docker 中编译

可以告诉我,我可以给你更具体的方案。

0 踩