source: pst/typesetting/texlive.xml@ 1778164

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt 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 1778164 was fa3edfef, checked in by Pierre Labastie <pieere@…>, 4 years ago

Format pst

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

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