source: pst/typesetting/texlive.xml@ c74eb3a

10.0 10.1 11.0 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind ken/refactor-virt lazarus perl-modules qt5new trunk xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since c74eb3a was c74eb3a, checked in by Ken Moffat <ken@…>, 3 years ago

TeXLive 2018.

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

  • Property mode set to 100644
File size: 16.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 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 "41d1e8874d266935c656fe51b440a413">
10 <!ENTITY texlive-size "48 MB">
11
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)">
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 "05330b3b5445ef60b08a0ed660c55c92">
18 <!ENTITY texlive-texmf-size "2.5 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 &lfs82_checked;
54
55 <bridgehead renderas="sect3">Package Information</bridgehead>
56 <itemizedlist spacing="compact">
57 <listitem>
58 <para>Download (HTTP): <ulink url="&texlive-download-http;"/></para>
59 </listitem>
60 <listitem>
61 <para>Download (FTP): <ulink url="&texlive-download-ftp;"/></para>
62 </listitem>
63 <listitem>
64 <para>Download MD5 sum: &texlive-md5sum;</para>
65 </listitem>
66 <listitem>
67 <para>Download size: &texlive-size;</para>
68 </listitem>
69 <listitem>
70 <para>Estimated disk space required: &texlive-buildsize;</para>
71 </listitem>
72 <listitem>
73 <para>Estimated build time: &texlive-time;</para>
74 </listitem>
75 </itemizedlist>
76
77 <bridgehead renderas="sect3">Required Additional Downloads</bridgehead>
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">
92 <listitem>
93 <para>Download (HTTP): <ulink url="&texlive-texmf-download-http;"/></para>
94 </listitem>
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>
104 <listitem>
105 <para>Required patch: <ulink
106 url="&patch-root;/texlive-&texlive-version;-source-upstream_fixes-1.patch"/></para>
107 </listitem>
108 </itemizedlist>
109
110 <bridgehead renderas="sect3">TeX Live from source Dependencies</bridgehead>
111
112 <bridgehead renderas="sect4">Recommended</bridgehead>
113 <para role="recommended">
114 <xref linkend="gs"/> <emphasis>including
115 <filename>libgs.so</filename></emphasis> (for dvisvgm, which is used by e.g.
116 <xref role="nodep" linkend="asymptote"/>),
117 <xref linkend="x-window-system"/>
118 </para>
119
120 <!-- text for recommended libraries -->
121 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
122 href="../../xincludes/texrecommendlibs.xml"/>
123
124 <bridgehead renderas="sect4">Optional</bridgehead>
125 <!-- text for optional deps -->
126 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
127 href="../../xincludes/texoptional.xml"/>
128
129 <bridgehead renderas="sect4">Runtime dependencies</bridgehead>
130 <!-- text for runtime deps, shared with tl-installer -->
131 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
132 href="../../xincludes/texruntime.xml"/>
133
134 <para condition="html" role="usernotes">User Notes:
135 <ulink url="&blfs-wiki;/texlive"/></para>
136
137 </sect2>
138
139 <sect2 role="installation">
140 <title>Installation of TeX Live</title>
141
142 <para>
143 Install TeX Live by running the following commands:
144 </para>
145
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>
164 </note>
165
166 <para>
167 Now, as a normal user:
168 </para>
169<screen><userinput>export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &amp;&amp;
170
171patch -Np1 -i ../texlive-&texlive-version;-source-upstream_fixes-1.patch &amp;&amp;
172
173mv -v texk/web2c/pdftexdir/pdftoepdf{-newpoppler,}.cc &amp;&amp;
174mv -v texk/web2c/pdftexdir/pdftosrc{-newpoppler,}.cc &amp;&amp;
175
176mkdir texlive-build &amp;&amp;
177cd texlive-build &amp;&amp;
178
179../configure \
180 --prefix=/opt/texlive/&texlive-year; \
181 --bindir=/opt/texlive/&texlive-year;/bin/$TEXARCH \
182 --datarootdir=/opt/texlive/&texlive-year; \
183 --includedir=/opt/texlive/&texlive-year;/include \
184 --infodir=/opt/texlive/&texlive-year;/texmf-dist/doc/info \
185 --libdir=/opt/texlive/&texlive-year;/lib \
186 --mandir=/opt/texlive/&texlive-year;/texmf-dist/doc/man \
187 --disable-native-texlive-build \
188 --disable-static --enable-shared \
189 --with-system-cairo \
190 --with-system-fontconfig \
191 --with-system-freetype2 \
192 --with-system-gmp \
193 --with-system-graphite2 \
194 --with-system-harfbuzz \
195 --with-system-icu \
196 --with-system-libgs \
197 --with-system-libpaper \
198 --with-system-libpng \
199 --with-system-mpfr \
200 --with-system-pixman \
201 --with-system-poppler \
202 --with-system-potrace \
203 --with-system-xpdf \
204 --with-system-zlib \
205 --with-banner-add=" - BLFS" &amp;&amp;
206
207make</userinput></screen>
208
209 <para>To test the results, issue: <command>make check</command>
210 A few tests may SKIP because kpathsea
211 has not yet been installed.</para>
212
213 <para>Now, as the <systemitem class="username">root</systemitem>
214 user:</para>
215
216<!-- Editors, you can run 'make texlinks' in a DESTDIR by passing
217DESTDIR#some/where -->
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<!-- if texmf does not need to be patched, remove &amp;&amp; from first line,
236 close userinput, screen, comment pushd, patch, popd -->
237<screen role="root"><userinput>tar -xf ../../texlive-&texmf-version;-texmf.tar.xz -C /opt/texlive/&texlive-year; --strip-components=1</userinput></screen>
238
239 <para>Still as the <systemitem class="username">root</systemitem> user,
240 initialise the new system (the commands <command>fmtutil-sys --all</command>
241 and <command>mtxrun --generate</command> will produce a
242 <emphasis>lot</emphasis> of output):</para>
243
244<!-- Editors, fmtutil-sys and mtxrun \-\-generate can apparently only be run on
245a real install, as root. But mktexlsr can be run in a DESTDIR with
246cd /YOUR/TEXMF/ROOT ; ls -LAR ./ >ls-R -->
247
248<screen role="root"><userinput>mktexlsr &amp;&amp;
249fmtutil-sys --all &amp;&amp;
250mtxrun --generate</userinput></screen>
251
252 <para>You can now proceed to <xref linkend="asymptote"/>,
253 <xref linkend="biber"/> and / or <xref linkend="xindy"/> if you
254 wish to install them.</para>
255
256 </sect2>
257
258 <sect2 role="commands">
259 <title>Command Explanations</title>
260
261 <para>
262 <command>patch -Np1 -i ../texlive-&texlive-version;-source-upstream_fixes-1.patch</command>:
263 various problems have come to light since the shipped source was frozen to
264 be committed to DVDs. In particular, a segmentation fault in dvipdfm-x from
265 XeTeX and changes in upstream poppler-0.64.0.
266 </para>
267
268 <para>
269 <command>mv -v texk/web2c/pdftexdir/pdftoepdf{-newpoppler,}.cc ...</command>:
270 The &texlive-year; version of texlive ships with support for poppler-0.57.0
271 and older, but it includes alternative newpoppler files which enable building
272 with poppler-0.62.0 or newer.
273 </para>
274
275 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
276 href="../../xincludes/tex-prefix.xml"/>
277
278 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
279 href="../../xincludes/tex-lib.xml"/>
280
281 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
282 href="../../xincludes/static-libraries.xml"/>
283
284 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
285 href="../../xincludes/tex-shared.xml"/>
286
287 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
288 href="../../xincludes/tex-system.xml"/>
289
290 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
291 href="../../xincludes/tex-xpdf.xml"/>
292
293 <para>
294 <option>--without-x</option>: use this if you do not have Xorg installed.
295 </para>
296
297 <para>
298 <command>/sbin/ldconfig</command>: this has to be run here so that <command>make
299 texlinks</command> can use kpsewhich.
300 </para>
301
302 <para>
303 <command>make texlinks</command> : this runs the texlinks.sh script
304 to create symbolic links from formats to engines. In
305 practice, several of the targets such as <command>xetex</command> are now
306 separate binaries and for these it will report "file already exists".
307 </para>
308
309 <para>
310 <command>tar -xf texlive-&texmf-version;-texmf.tar.xz -C /opt/texlive/&texlive-year; --strip-components=1</command>:
311 the tarball contains the files for the texmf-dist directory, and because
312 of its size we do not want to waste time and space untarring it and then
313 copying the files.
314 </para>
315
316 <para>
317 <command>install -v -m644 ../texk/tests/TeXLive/*
318 /opt/texlive/&texlive-year;/tlpkg/TeXLive/</command>: This puts the perl
319 modules <filename>TLConfig.pm</filename> and <filename>TLUtils.pm</filename>
320 into the directory where the binary installer puts them - it is at the
321 start of the perl @INC@ PATH within texlive when installed using the above
322 configure switches. Without these modules, texlive is unusable.
323 </para>
324
325 <para>
326 <command>mktexlsr</command>: Create an <filename>ls-R</filename> file
327 which lists what was installed - this is used by kpathsea to find files.
328 </para>
329
330 <para>
331 <command>fmtutil-sys --all</command>: This initialises the TeX formats,
332 Metafont bases and Metapost mems.
333 </para>
334
335 <para>
336 <command>mtxrun --generate</command>: This initialise the ConTeXt system.
337 </para>
338
339 </sect2>
340
341 <sect2 role="content">
342 <title>Contents</title>
343
344 <segmentedlist>
345 <segtitle>Installed Programs</segtitle>
346 <segtitle>Installed Libraries</segtitle>
347 <segtitle>Installed Directories</segtitle>
348
349 <seglistitem>
350 <seg>Over 300 binaries and symlinks to scripts</seg>
351 <seg>libkpathsea.so, libptexenc.so, libsynctex.so, libtexlua52.so,
352 libtexluajit.so</seg>
353 <seg>/opt/texlive/&texlive-year;/bin, /opt/texlive/&texlive-year;/include,
354 /opt/texlive/&texlive-year;/lib, /opt/texlive/&texlive-year;/texmf-dist</seg>
355 </seglistitem>
356 </segmentedlist>
357
358 <variablelist>
359 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
360 <?dbfo list-presentation="list"?>
361 <?dbhtml list-presentation="table"?>
362
363 <varlistentry id="texlive-programs">
364 <term><command>TeX&nbsp;programs</command></term>
365 <listitem>
366 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
367 href="../../xincludes/texprogs.xml"/>
368 <indexterm zone="texlive texlive-programs">
369 <primary sortas="b-texlive-programs">TeX Live programs</primary>
370 </indexterm>
371 </listitem>
372 </varlistentry>
373
374 <varlistentry id="libkpathsea">
375 <term><filename class="libraryfile">libkpathsea.so</filename></term>
376 <listitem>
377 <para>
378 (kpathsearch) exists to look up a file in a list of directories
379 and is used by <command>kpsewhich</command>.
380 </para>
381 <indexterm zone="texlive libkpathsea">
382 <primary sortas="c-libkpathsea">libkpathsea.so</primary>
383 </indexterm>
384 </listitem>
385 </varlistentry>
386
387 <varlistentry id="libptexenc">
388 <term><filename class="libraryfile">libptexenc.so</filename></term>
389 <listitem>
390 <para>
391 is a library for Japanese pTeX (publishing TeX).
392 </para>
393 <indexterm zone="texlive libptexenc">
394 <primary sortas="c-libptexenc">libptexenc.so</primary>
395 </indexterm>
396 </listitem>
397 </varlistentry>
398
399 <varlistentry id="libsynctex">
400 <term><filename class="libraryfile">libsynctex.so</filename></term>
401 <listitem>
402 <para>
403 is the SyncTeX (Synchronize TeXnology) parser library.
404 </para>
405 <indexterm zone="texlive libsynctex">
406 <primary sortas="c-libsynctex">libsynctex.so</primary>
407 </indexterm>
408 </listitem>
409 </varlistentry>
410
411 <varlistentry id="libtexlua52">
412 <term><filename class="libraryfile">libtexlua52.so</filename></term>
413 <listitem>
414 <para>
415 provides Lua 5.2, modified for use with LuaTeX.
416 </para>
417 <indexterm zone="texlive libtexlua52">
418 <primary sortas="c-libtexlua52">libtexlua52.so</primary>
419 </indexterm>
420 </listitem>
421 </varlistentry>
422
423 <varlistentry id="libtexluajit">
424 <term><filename class="libraryfile">libtexluajit.so</filename></term>
425 <listitem>
426 <para>
427 provides LuaJIT, modified for use with LuaJITTeX.
428 </para>
429 <indexterm zone="texlive libtexluajit">
430 <primary sortas="c-libtexluajit">libtexluajit.so</primary>
431 </indexterm>
432 </listitem>
433 </varlistentry>
434 </variablelist>
435
436 </sect2>
437
438</sect1>
Note: See TracBrowser for help on using the repository browser.