source: pst/typesetting/texlive.xml@ 95d0a04

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 95d0a04 was 95d0a04, checked in by Ken Moffat <ken@…>, 7 years ago

Use /sbin/ldconfig instead of just 'ldconfig' in llvm3 and texlive so that it can work if /sbin is not on root's PATH, e.g. after sudo.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@18820 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 16.4 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 texlive-download-http " ">
8 <!ENTITY texlive-download-ftp "ftp://tug.org/texlive/historic/&texlive-year;/texlive-&texlive-version;-source.tar.xz">
9 <!ENTITY texlive-md5sum "f98f6bde0a2c20fc894d983d542beaad">
10 <!ENTITY texlive-size "61 MB">
11
12 <!ENTITY texlive-buildsize "6.0 GB including the additional download, 4.9 GB installed">
13 <!ENTITY texlive-time "8.2 SBU including the additional download (+0.3 SBU for the tests)">
14
15 <!ENTITY texlive-texmf-download-http " ">
16 <!ENTITY texlive-texmf-download-ftp "ftp://tug.org/texlive/historic/&texlive-year;/texlive-&texmf-version;-texmf.tar.xz">
17 <!ENTITY texlive-texmf-md5sum "44bb5d71fc64ac90118f8c5013e39b89">
18 <!ENTITY texlive-texmf-size "2.3 GB">
19
20]>
21
22
23<sect1 id="texlive" xreflabel="texlive-&texlive-version;">
24 <?dbhtml filename="texlive.html"?>
25
26 <sect1info>
27 <othername>$LastChangedBy$</othername>
28 <date>$Date$</date>
29 </sect1info>
30
31 <title>texlive-&texlive-version;-source</title>
32
33 <indexterm zone="texlive">
34 <primary sortas="a-texlive">texlive</primary>
35 </indexterm>
36
37 <sect2 role="package">
38 <title>Introduction to TeX Live from source</title>
39
40 <para>Most of TeX Live can be built from source without a pre-existing
41 installation, but <application>xindy</application> (for indexing) needs
42 working versions of <command>latex</command> and <command>pdflatex</command>
43 when configure is run, and the testsuite and install for
44 <command>asy</command> (for vector graphics) will fail if TeX has not
45 already been installed. Additionally, <application>biber</application> is
46 not provided within the <application>texlive</application> source.</para>
47
48 <para>All of those packages are dealt with on their own pages and can be
49 built after installing this package. If you have not already done so, you
50 should start at <xref linkend="tex-path"/> so that the final commands to
51 initialise the new installation will be found.</para>
52
53 &lfs80_checked;
54 &gcc7_checked;
55
56 <bridgehead renderas="sect3">Package Information</bridgehead>
57 <itemizedlist spacing="compact">
58 <listitem>
59 <para>Download (HTTP): <ulink url="&texlive-download-http;"/></para>
60 </listitem>
61 <listitem>
62 <para>Download (FTP): <ulink url="&texlive-download-ftp;"/></para>
63 </listitem>
64 <listitem>
65 <para>Download MD5 sum: &texlive-md5sum;</para>
66 </listitem>
67 <listitem>
68 <para>Download size: &texlive-size;</para>
69 </listitem>
70 <listitem>
71 <para>Estimated disk space required: &texlive-buildsize;</para>
72 </listitem>
73 <listitem>
74 <para>Estimated build time: &texlive-time;</para>
75 </listitem>
76 </itemizedlist>
77
78 <bridgehead renderas="sect3">Required Additional Downloads</bridgehead>
79
80 <para>Much of the texlive environment (including scripts, documentation,
81 fonts and various other files) is not part of the source tarball. You must
82 download it separately. This will give you all of the additional files
83 which are provided by a full install of the binary version, there is no
84 realistic way to restrict which parts get installed.</para>
85
86 <para>
87 Because of the size of this package, it is unlikely to be mirrored by
88 BLFS mirrors. In case of difficulty, go to http://www.ctan.org/mirrors/
89 to find a more-accessible mirror.
90 </para>
91
92 <itemizedlist spacing="compact">
93 <listitem>
94 <para>Download (HTTP): <ulink url="&texlive-texmf-download-http;"/></para>
95 </listitem>
96 <listitem>
97 <para>Download (FTP): <ulink url="&texlive-texmf-download-ftp;"/></para>
98 </listitem>
99 <listitem>
100 <para>Download MD5 sum: &texlive-texmf-md5sum;</para>
101 </listitem>
102 <listitem>
103 <para>Download size: &texlive-texmf-size;</para>
104 </listitem>
105 <listitem>
106 <para>Required patch: <ulink
107 url="&patch-root;/texlive-&texlive-version;-source-gcc7-1.patch"/></para>
108 </listitem>
109 <listitem>
110 <para>Required patch: <ulink
111 url="&patch-root;/texlive-&texlive-version;-source-upstream_fixes-1.patch"/></para>
112 </listitem>
113 </itemizedlist>
114
115 <bridgehead renderas="sect3">TeX Live from source Dependencies</bridgehead>
116
117 <bridgehead renderas="sect4">Recommended</bridgehead>
118 <para role="recommended">
119 <xref linkend="gs"/> <emphasis>including
120 <filename>libgs.so</filename></emphasis> (for dvisvgm, which is used by e.g.
121 <xref linkend="asymptote"/>),
122 <xref linkend="x-window-system"/>
123 </para>
124
125 <!-- text for recommended libraries -->
126 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
127 href="../../xincludes/texrecommendlibs.xml"/>
128
129 <bridgehead renderas="sect4">Optional</bridgehead>
130 <!-- text for optional deps -->
131 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
132 href="../../xincludes/texoptional.xml"/>
133
134 <bridgehead renderas="sect4">Runtime dependencies</bridgehead>
135 <!-- text for runtime deps, shared with tl-installer -->
136 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
137 href="../../xincludes/texruntime.xml"/>
138
139 <para condition="html" role="usernotes">User Notes:
140 <ulink url="&blfs-wiki;/texlive"/></para>
141
142 </sect2>
143
144 <sect2 role="installation">
145 <title>Installation of TeX Live</title>
146
147 <para>
148 Install TeX Live by running the following commands:
149 </para>
150
151 <para>The shared libraries will be installed into a texlive directory.
152 As the <systemitem class="username">root</systemitem> user, add it to
153 your <filename>/etc/ld.so.conf</filename>:</para>
154
155<screen role="root"><userinput>cat &gt;&gt; /etc/ld.so.conf &lt;&lt; EOF
156<literal># Begin texlive &texlive-year; addition
157
158/opt/texlive/&texlive-year;/lib
159
160# End texlive &texlive-year; addition</literal>
161EOF</userinput></screen>
162
163 <note>
164 <para>
165 From 2015 onwards, a successful install requires some texlive
166 commands to be run as the root user, so we will export the TEXARCH
167 variable to let <systemitem class="username">root</systemitem> use it.
168 </para>
169 </note>
170
171 <para>
172 Now, as a normal user:
173 </para>
174<screen><userinput>export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &amp;&amp;
175
176patch -Np1 -i ../texlive-&texlive-version;-source-gcc7-1.patch &amp;&amp;
177patch -Np1 -i ../texlive-&texlive-version;-source-upstream_fixes-1.patch &amp;&amp;
178
179mkdir texlive-build &amp;&amp;
180cd texlive-build &amp;&amp;
181
182../configure \
183 --prefix=/opt/texlive/&texlive-year; \
184 --bindir=/opt/texlive/&texlive-year;/bin/$TEXARCH \
185 --datarootdir=/opt/texlive/&texlive-year; \
186 --includedir=/opt/texlive/&texlive-year;/include \
187 --infodir=/opt/texlive/&texlive-year;/texmf-dist/doc/info \
188 --libdir=/opt/texlive/&texlive-year;/lib \
189 --mandir=/opt/texlive/&texlive-year;/texmf-dist/doc/man \
190 --disable-native-texlive-build \
191 --disable-static --enable-shared \
192 --with-system-cairo \
193 --with-system-fontconfig \
194 --with-system-freetype2 \
195 --with-system-gmp \
196 --with-system-graphite2 \
197 --with-system-harfbuzz \
198 --with-system-icu \
199 --with-system-libgs \
200 --with-system-libpaper \
201 --with-system-libpng \
202 --with-system-mpfr \
203 --with-system-pixman \
204 --with-system-poppler \
205 --with-system-xpdf \
206 --with-system-zlib \
207 --with-banner-add=" - BLFS" &amp;&amp;
208
209make</userinput></screen>
210
211 <para>To test the results, issue: <command>make check</command>
212 A few tests may SKIP because kpathsea
213 has not yet been installed.</para>
214
215 <para>Now, as the <systemitem class="username">root</systemitem>
216 user:</para>
217
218<screen role="root"><userinput>make install-strip &amp;&amp;
219/sbin/ldconfig &amp;&amp;
220make texlinks &amp;&amp;
221mkdir -pv /opt/texlive/&texlive-year;/tlpkg/TeXLive/ &amp;&amp;
222install -v -m644 ../texk/tests/TeXLive/* /opt/texlive/&texlive-year;/tlpkg/TeXLive/</userinput></screen>
223
224 <note>
225 <para>
226 Only run <command>make texlinks</command> once. If it is rerun,
227 it can change all the program symlinks so that they point to
228 themselves and are useless.
229 </para>
230 </note>
231
232 <para>Now install the additional files as the
233 <systemitem class="username">root</systemitem> user:</para>
234
235<screen role="root"><userinput>tar -xf ../../texlive-&texmf-version;-texmf.tar.xz -C /opt/texlive/&texlive-year; --strip-components=1</userinput></screen>
236<!-- commented until the next time texmf needs to be patched
237pushd /opt/texlive/&texlive-year; &amp;&amp;
238patch -Np1 -i /sources/texlive-&texlive-version;-texmf-upstream_fixes-1.patch &amp;&amp;
239popd
240</userinput></screen> -->
241
242 <para>Still as the <systemitem class="username">root</systemitem> user,
243 initialise the new system (the commands <command>fmtutil-sys --all</command>
244 and <command>mtxrun --generate</command> will produce a
245 <emphasis>lot</emphasis> of output):</para>
246
247<screen role="root"><userinput>mktexlsr &amp;&amp;
248fmtutil-sys --all &amp;&amp;
249mtxrun --generate</userinput></screen>
250
251 <para>You can now proceed to <xref linkend="asymptote"/>,
252 <xref linkend="biber"/> and / or <xref linkend="xindy"/> if you
253 wish to install them.</para>
254
255 </sect2>
256
257 <sect2 role="commands">
258 <title>Command Explanations</title>
259
260 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
261 href="../../xincludes/tex-prefix.xml"/>
262
263 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
264 href="../../xincludes/tex-lib.xml"/>
265
266 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
267 href="../../xincludes/static-libraries.xml"/>
268
269 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
270 href="../../xincludes/tex-shared.xml"/>
271
272 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
273 href="../../xincludes/tex-system.xml"/>
274
275 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
276 href="../../xincludes/tex-xpdf.xml"/>
277
278 <para>
279 <option>--without-x</option>: use this if you do not have Xorg installed.
280 </para>
281
282 <para>
283 <command>/sbin/ldconfig</command>: this has to be run here so that <command>make
284 texlinks</command> can use kpsewhich.
285 </para>
286
287 <para>
288 <command>make texlinks</command> : this runs the texlinks.sh script
289 to create symbolic links from formats to engines. In
290 practice, several of the targets such as <command>xetex</command> are now
291 separate binaries and for these it will report "file already exists".
292 </para>
293
294 <para>
295 <command>tar -xf texlive-&texmf-version;-texmf.tar.xz -C /opt/texlive/&texlive-year; --strip-components=1</command>:
296 the tarball contains the files for the texmf-dist directory, and because
297 of its size we do not want to waste time and space untarring it and then
298 copying the files.
299 </para>
300
301 <para>
302 <command>patch -Np1 -i /sources/texlive-&texlive-version;-texmf...</command>:
303 This fixes various problems in epstopdf which were found after the source
304 was released and are included in the binary installer. Because this is
305 applied to the installated texmf (to minimise disk space) it is necessary
306 to point to /sources instead of using ../
307 </para>
308
309 <para>
310 <command>install -v -m644 ../texk/tests/TeXLive/*
311 /opt/texlive/&texlive-year;/tlpkg/TeXLive/</command>: This puts the perl
312 modules <filename>TLConfig.pm</filename> and <filename>TLUtils.pm</filename>
313 into the directory where the binary installer puts them - it is at the
314 start of the perl @INC@ PATH within texlive when installed using the above
315 configure switches. Without these modules, texlive is unusable.
316 </para>
317
318 <para>
319 <command>mktexlsr</command>: Create an <filename>ls-R</filename> file
320 which lists what was installed - this is used by kpathsea to find files.
321 </para>
322
323 <para>
324 <command>fmtutil-sys --all</command>: This initialises the TeX formats,
325 Metafont bases and Metapost mems.
326 </para>
327
328 <para>
329 <command>mtxrun --generate</command>: This initialise the ConTeXt system.
330 </para>
331
332 </sect2>
333
334 <sect2 role="content">
335 <title>Contents</title>
336
337 <segmentedlist>
338 <segtitle>Installed Programs</segtitle>
339 <segtitle>Installed Libraries</segtitle>
340 <segtitle>Installed Directories</segtitle>
341
342 <seglistitem>
343 <seg>Over 300 binaries and symlinks to scripts</seg>
344 <seg>libkpathsea.so, libptexenc.so, libsynctex.so, libtexlua52.so,
345 libtexluajit.so</seg>
346 <seg>/opt/texlive/&texlive-year;/bin, /opt/texlive/&texlive-year;/include,
347 /opt/texlive/&texlive-year;/lib, /opt/texlive/&texlive-year;/texmf-dist</seg>
348 </seglistitem>
349 </segmentedlist>
350
351 <variablelist>
352 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
353 <?dbfo list-presentation="list"?>
354 <?dbhtml list-presentation="table"?>
355
356 <varlistentry id="texlive-programs">
357 <term><command>TeX&nbsp;programs</command></term>
358 <listitem>
359 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
360 href="../../xincludes/texprogs.xml"/>
361 <indexterm zone="texlive texlive-programs">
362 <primary sortas="b-texlive-programs">TeX Live programs</primary>
363 </indexterm>
364 </listitem>
365 </varlistentry>
366
367 <varlistentry id="libkpathsea">
368 <term><filename class="libraryfile">libkpathsea.so</filename></term>
369 <listitem>
370 <para>
371 (kpathsearch) exists to look up a file in a list of directories
372 and is used by <command>kpsewhich</command>.
373 </para>
374 <indexterm zone="texlive libkpathsea">
375 <primary sortas="c-libkpathsea">libkpathsea.so</primary>
376 </indexterm>
377 </listitem>
378 </varlistentry>
379
380 <varlistentry id="libptexenc">
381 <term><filename class="libraryfile">libptexenc.so</filename></term>
382 <listitem>
383 <para>
384 is a library for Japanese pTeX (publishing TeX).
385 </para>
386 <indexterm zone="texlive libptexenc">
387 <primary sortas="c-libptexenc">libptexenc.so</primary>
388 </indexterm>
389 </listitem>
390 </varlistentry>
391
392 <varlistentry id="libsynctex">
393 <term><filename class="libraryfile">libsynctex.so</filename></term>
394 <listitem>
395 <para>
396 is the SyncTeX (Synchronize TeXnology) parser library.
397 </para>
398 <indexterm zone="texlive libsynctex">
399 <primary sortas="c-libsynctex">libsynctex.so</primary>
400 </indexterm>
401 </listitem>
402 </varlistentry>
403
404 <varlistentry id="libtexlua52">
405 <term><filename class="libraryfile">libtexlua52.so</filename></term>
406 <listitem>
407 <para>
408 provides Lua 5.2, modified for use with LuaTeX.
409 </para>
410 <indexterm zone="texlive libtexlua52">
411 <primary sortas="c-libtexlua52">libtexlua52.so</primary>
412 </indexterm>
413 </listitem>
414 </varlistentry>
415
416 <varlistentry id="libtexluajit">
417 <term><filename class="libraryfile">libtexluajit.so</filename></term>
418 <listitem>
419 <para>
420 provides LuaJIT, modified for use with LuaJITTeX.
421 </para>
422 <indexterm zone="texlive libtexluajit">
423 <primary sortas="c-libtexluajit">libtexluajit.so</primary>
424 </indexterm>
425 </listitem>
426 </varlistentry>
427 </variablelist>
428
429 </sect2>
430
431</sect1>
Note: See TracBrowser for help on using the repository browser.