Introduction to Node.js
Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine.
Note
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): https://nodejs.org/dist/v22.15.1/node-v22.15.1.tar.xz
-
Download MD5 sum: 5bfea4efe741bd702917223c44e2c91c
-
Download size: 37 MB
-
Estimated disk space required: 1.3 GB (add 46 MB for tests)
-
Estimated build time: 11 SBU (add 2 SBU for tests: both using
parallelism=8 and 8 CPUs online, parts of the tests will use
all online CPUs)
Node.js Dependencies
Required
Which-2.23
Recommended
Brotli-1.1.0, c-ares-1.34.5,
ICU-77.1,
libuv-1.51.0, and nghttp2-1.65.0
Optional
http-parser and
npm (an internal
copy of npm will be
installed if not present)
Note
An Internet connection is needed for some tests of this package.
The system certificate store may need to be set up with make-ca-1.16 before testing this package.
Installation of Node.js
Build Node.js by running the
following commands:
./configure --prefix=/usr \
--shared-brotli \
--shared-cares \
--shared-libuv \
--shared-openssl \
--shared-nghttp2 \
--shared-zlib \
--with-intl=system-icu &&
make
To test the results, issue: make
test-only. Out of over 4300 tests, 3 in the
'parallel' test suite are known to fail.
Now, as the root
user:
make install &&
ln -sf node /usr/share/doc/node-22.15.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-{brotli,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.
Contents
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-22.15.1}, and
/usr/share/systemtap/tapset
Short Descriptions
corepack
|
is an experimental tool to help with managing versions of
package managers.
|
node
|
is the server-side JavaScript runtime
|
npm
|
is the Node.js package
manager
|
npx
|
is short for npm
exec , which allows running commands from
NPM packages
|
/usr/lib/node_modules/npm/
|
is the installation root for Node.js executables and
libraries
|