source: pst/typesetting/texlive.xml@ 30be81d

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.4 9.0 9.1 bdubbs/svn elogind 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 30be81d was 30be81d, checked in by Ken Moffat <ken@…>, 5 years ago

Texlive: give up on system poppler, it is a moving target.

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

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