#### Beyond Linux® From Scratch (systemd Edition) - Version 11.1

### Chapter 9. General Libraries

- Prev

  mtdev-1.1.6

- Next

  npth-1.6

- Up
- Home

# Node.js-16.14.0

## Introduction to Node.js

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

This package is known to build and work properly using an LFS-11.1 platform.

### Package Information

- Download (HTTP): https://nodejs.org/dist/v16.14.0/node-v16.14.0.tar.xz

- Download MD5 sum: 46a63d98585a4b76542776e5d5b50d15

- Download size: 33 MB

- Estimated disk space required: 750 MB (add 27 MB for tests)

- Estimated build time: 14 SBU (add 2.6 SBU for tests: both using parallelism=4 and 4 CPUs online, parts of the tests will use all online CPUs)

### Node.js Dependencies

#### Required

Which-2.21

#### Recommended

c-ares-1.18.1, ICU-70.1, libuv-1.43.0, and nghttp2-1.46.0

#### Optional

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

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/nodejs

## 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 &&
    make

To test the results, issue: make test-only.

Now, as the `root` user:

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

## 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.

## Contents

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

### Short Descriptions

node | is the server-side JavaScript runtime
npm | is the Node.js package manager
`/usr/lib/node_modules/npm/` | is the installation root for Node.js executables and libraries

Last updated on

- Prev

  mtdev-1.1.6

- Next

  npth-1.6

- Up
- Home