source: general/genlib/nodejs.xml@ dda8ca6

11.0 qt5new trunk
Last change on this file since dda8ca6 was dda8ca6, checked in by Douglas R. Reno <renodr@…>, 3 months ago

Update to node-v14.17.1

  • Property mode set to 100644
File size: 7.8 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY nodejs-download-http "https://nodejs.org/dist/v&nodejs-version;/node-v&nodejs-version;.tar.xz">
8 <!ENTITY nodejs-download-ftp " ">
9 <!ENTITY nodejs-md5sum "35f9705bd60bea81b03e427541e0b1af">
10 <!ENTITY nodejs-size "32 MB">
11 <!ENTITY nodejs-buildsize "750 MB (add 36 MB for tests)">
12 <!ENTITY nodejs-time "10.1 SBU (using parallelism=4; add 2.9 SBU for tests)">
13 <!-- time might be longer on intel, on AMD the initial LFS SBU is very slow -->
14]>
15
16<sect1 id="nodejs" xreflabel="nodejs-&nodejs-version;">
17 <?dbhtml filename="nodejs.html"?>
18
19 <sect1info>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Node.js-&nodejs-version;</title>
24
25 <indexterm zone="nodejs">
26 <primary sortas="a-nodejs">nodejs</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Node.js</title>
31
32 <para>
33 <application>Node.js</application> is a
34 <application>JavaScript</application> runtime built on
35 <application>Chrome's</application> V8 JavaScript engine.
36 </para>
37
38 &lfs101_checked;
39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>
44 Download (HTTP): <ulink url="&nodejs-download-http;"/>
45 </para>
46 </listitem>
47 <listitem>
48 <para>
49 Download (FTP): <ulink url="&nodejs-download-ftp;"/>
50 </para>
51 </listitem>
52 <listitem>
53 <para>
54 Download MD5 sum: &nodejs-md5sum;
55 </para>
56 </listitem>
57 <listitem>
58 <para>
59 Download size: &nodejs-size;
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Estimated disk space required: &nodejs-buildsize;
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Estimated build time: &nodejs-time;
70 </para>
71 </listitem>
72 </itemizedlist>
73
74<!--
75 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
76 <itemizedlist spacing="compact">
77 <listitem>
78 <para>
79 Required patch:
80 <ulink url="&patch-root;/node-v&nodejs-version;-icu_69-1.patch"/>
81 </para>
82 </listitem>
83 </itemizedlist>
84-->
85
86<!--<note>
87 <para>
88 This tarball was created using a BSD version of
89 <application>tar</application> and extracting it with a linux&trade;
90 version will produce harmless warnings about unknown extended header
91 keywords.
92 </para>
93 </note>-->
94
95 <bridgehead renderas="sect3">Node.js Dependencies</bridgehead>
96
97 <bridgehead renderas="sect4">Required</bridgehead>
98 <para role="required">
99 <xref linkend="which"/>
100 </para>
101
102 <bridgehead renderas="sect4">Recommended</bridgehead>
103 <para role="recommended">
104 <xref linkend="c-ares"/>,
105 <xref linkend="icu"/>,
106 <xref linkend="libuv"/>, and
107 <xref linkend="nghttp2"/>
108 </para>
109
110 <bridgehead renderas="sect4">Optional</bridgehead>
111 <para role="optional">
112 <ulink url="https://github.com/nodejs/http-parser">http-parser</ulink> and
113 <ulink url="https://www.npmjs.com/">npm</ulink> (an internal copy of
114 <command>npm</command> will be installed if not present)
115 </para>
116
117 <para condition="html" role="usernotes">
118 User Notes: <ulink url="&blfs-wiki;/nodejs"/>
119 </para>
120
121 </sect2>
122
123 <sect2 role="installation">
124 <title>Installation of Node.js</title>
125
126<!--
127 <para>
128 First, apply a patch to fix building Node.js against ICU-69.1:
129 </para>
130
131<screen><userinput>patch -Np1 -i ../node-v&nodejs-version;-icu_69-1.patch</userinput></screen>
132-->
133
134 <para>
135 Build <application>Node.js</application> by running the following
136 commands:
137 </para>
138
139<screen><userinput>./configure --prefix=/usr \
140 --shared-cares \
141 --shared-libuv \
142 --shared-openssl \
143 --shared-nghttp2 \
144 --shared-zlib \
145 --with-intl=system-icu &amp;&amp;
146make</userinput></screen>
147
148 <para>
149 To test the results, issue: <command>make test-only</command>.
150 <!--One test, test-dns, is known to fail.-->
151 <!-- When using make check, a module is used that wasn't shipped properly
152 with the 12.16.2 release. See Ticket #13379 for details. We should
153 probably restore "make check" after the next version of Node.js.
154 This new command skips the documentation and lint checks. -renodr-->
155 </para>
156
157 <para>
158 Now, as the <systemitem class="username">root</systemitem> user:
159 </para>
160
161<screen role="root"><userinput>make install &amp;&amp;
162ln -sf node /usr/share/doc/node-&nodejs-version;</userinput></screen>
163 </sect2>
164
165 <sect2 role="commands">
166 <title>Command Explanations</title>
167
168 <para>
169 <parameter>--with-intl=system-icu</parameter>: use the system version
170 of <application>icu</application>. Other values are
171 <option>full-icu</option> (to build a local, full
172 <application>icu</application> library) and <option>small-icu</option>
173 (to build a local, minimal <application>icu</application> library).
174 </para>
175
176 <para>
177 <!-- FIXME : reinstate nghttp2 in this if build is fixed
178 FIXME cont: Seems to be fixed in 12.18.1 -renodr
179 <parameter>\-\-shared-{cares,libuv,nghttp2,openssl,zlib}</parameter>: -->
180 <parameter>--shared-{cares,libuv,nghttp2,openssl,zlib}</parameter>:
181 use the system installed libraries instead of local copies.
182 </para>
183
184 <para>
185 <option>--without-npm</option>: do not build
186 <application>npm</application> (use if you'd like to build a separate
187 <application>npm</application> later).
188 </para>
189
190 <para>
191 <option>--shared-http-parser</option>: use the system
192 installed library instead of a local copy.
193 </para>
194
195 </sect2>
196
197 <sect2 role="content">
198 <title>Contents</title>
199
200 <segmentedlist>
201 <segtitle>Installed Programs</segtitle>
202 <segtitle>Installed Library</segtitle>
203 <segtitle>Installed Directories</segtitle>
204
205 <seglistitem>
206 <seg>
207 node, npm, and npx
208 </seg>
209 <seg>
210 None
211 </seg>
212 <seg>
213 /usr/include/node,
214 /usr/lib/node_modules/npm,
215 /usr/share/doc/{node,node-&nodejs-version;}, and
216 /usr/share/systemtap/tapset
217 </seg>
218 </seglistitem>
219 </segmentedlist>
220
221 <variablelist>
222 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
223 <?dbfo list-presentation="list"?>
224 <?dbhtml list-presentation="table"?>
225
226 <varlistentry id="node">
227 <term><command>node</command></term>
228 <listitem>
229 <para>
230 is the server-side JavaScript runtime
231 </para>
232 <indexterm zone="nodejs node">
233 <primary sortas="b-node">node</primary>
234 </indexterm>
235 </listitem>
236 </varlistentry>
237
238 <varlistentry id="npm">
239 <term><command>npm</command></term>
240 <listitem>
241 <para>
242 is the <application>Node.js</application> package manager
243 </para>
244 <indexterm zone="nodejs npm">
245 <primary sortas="b-npm">npm</primary>
246 </indexterm>
247 </listitem>
248 </varlistentry>
249
250 <varlistentry>
251 <term>
252 <filename class="directory">/usr/lib/node_modules/npm/</filename>
253 </term>
254 <listitem>
255 <para>
256 is the installation root for Node.js executables and libraries
257 </para>
258 </listitem>
259 </varlistentry>
260
261 </variablelist>
262
263 </sect2>
264
265</sect1>
Note: See TracBrowser for help on using the repository browser.