Introduction to Node.js

Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine.



Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.

Package Information

  • Download (HTTP):

  • Download MD5 sum: cfadecca2649bb74daba89d60fbd02e5

  • Download size: 39 MB

  • Estimated disk space required: 992 MB (add 25 MB for tests)

  • Estimated build time: 13 SBU (add 3.3 SBU for tests: both using parallelism=8 and 8 CPUs online, parts of the tests will use all online CPUs)

Node.js Dependencies





http-parser and npm (an internal copy of npm will be installed if not present)

Installation of Node.js

Build Node.js by running the following commands:

./configure --prefix=/usr          \
            --shared-cares         \
            --shared-libuv         \
            --shared-openssl       \
            --shared-nghttp2       \
            --shared-zlib          \
            --with-intl=system-icu &&

To test the results, issue: make test-only. Several tests are known to fail due to behavior differences between OpenSSL-3.0 and OpenSSL-3.1.

Now, as the root user:

make install &&
ln -sf node /usr/share/doc/node-18.17.1

Command Explanations

--with-intl=system-icu: use the system version of icu. Other values are full-icu (to build a local, full icu library) and small-icu (to build a local, minimal icu library).

--shared-{cares,libuv,nghttp2,openssl,zlib}: use the system installed libraries instead of local copies.

--without-npm: do not build npm (use if you'd like to build a separate npm later).

--shared-http-parser: use the system installed library instead of a local copy.


Installed Programs: corepack, node, npm, and npx
Installed Library: None
Installed Directories: /usr/include/node, /usr/lib/node_modules/{corepack,npm}, /usr/share/doc/{node,node-18.17.1}, and /usr/share/systemtap/tapset

Short Descriptions


is an experimental tool to help with managing versions of package managers.


is the server-side JavaScript runtime


is the Node.js package manager


is the installation root for Node.js executables and libraries