source: pst/typesetting/texlive.xml@ 5cc86d0

10.0 10.1 11.0 11.1 7.10 7.6 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind krejzi/svn lazarus nosym perl-modules qt5new trunk upgradedb xry111/intltool xry111/test-20220226
Last change on this file since 5cc86d0 was 5cc86d0, checked in by Ken Moffat <ken@…>, 8 years ago

Use system gc in asymptote (texlive).

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

  • Property mode set to 100644
File size: 13.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-source-download-http " ">
8 <!ENTITY texlive-source-download-ftp "ftp://tug.org/texlive/historic/&texlive-year;/texlive-&texlive-version;-source.tar.xz">
9 <!ENTITY texlive-source-md5sum "09ee265ff51637827559affc7304078c">
10 <!ENTITY texlive-source-size "40 MB">
11
12 <!-- buildsize is the source dir, plus the kpathsea files installed to /usr.
13 The progs in bin/ARCH/ seem slightly smaller (shared libs) -->
14 <!ENTITY texlive-buildsize "555 MB">
15 <!ENTITY texlive-time "8.4 SBU">
16]>
17
18<sect1 id="texlive" xreflabel="texlive-&texlive-version;">
19 <?dbhtml filename="texlive.html"?>
20
21 <sect1info>
22 <othername>$LastChangedBy$</othername>
23 <date>$Date$</date>
24 </sect1info>
25
26 <title>texlive-&texlive-version;</title>
27
28 <indexterm zone="texlive">
29 <primary sortas="a-texlive">texlive</primary>
30 </indexterm>
31
32 <sect2 role="package">
33 <title>Introduction to TeX Live from source</title>
34
35 <para>A binary version of the <application>TeX Live</application> package
36 is installed at <xref linkend="tl-installer"/>. Here, we use that to rebuild
37 the compiled programs from source.</para>
38
39 &lfs75_checked;
40
41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
44 <para>Download (HTTP): <ulink url="&texlive-source-download-http;"/></para>
45 </listitem>
46 <listitem>
47 <para>Download (FTP): <ulink url="&texlive-source-download-ftp;"/></para>
48 </listitem>
49 <listitem>
50 <para>Download MD5 sum: &texlive-source-md5sum;</para>
51 </listitem>
52 <listitem>
53 <para>Download size: &texlive-source-size;</para>
54 </listitem>
55 <listitem>
56 <para>Estimated disk space required: &texlive-buildsize;</para>
57 </listitem>
58 <listitem>
59 <para>Estimated build time: &texlive-time;</para>
60 </listitem>
61 </itemizedlist>
62
63 <bridgehead renderas="sect3">TeX Live Dependencies</bridgehead>
64
65 <bridgehead renderas="sect4">Required</bridgehead>
66 <para role="required">
67 <xref linkend="tl-installer"/> or a previous version of TeX Live
68 (untested, you would need to alter the configure switches which refer
69 to &texlive-year; so that it overwrites your existing installation, or
70 else copy everything to the location for the current year).
71 </para>
72
73 <bridgehead renderas="sect4">Recommended</bridgehead>
74 <para role="recommended">
75 <xref linkend="gs"/> (for dvisvgm, which is used by asy),
76 <xref linkend="x-window-system"/>
77 </para>
78 <para>
79 The source ships with its own versions of <emphasis>many</emphasis>
80 libraries, and will use them unless it is forced to use the system
81 versions. The following are recommended so that the system version
82 will be used:
83 <xref linkend="fontconfig"/>,
84 <xref linkend="freetype2"/>,
85 <xref linkend="gc"/>,
86 <xref linkend="graphite2"/>,
87 <xref linkend="harfbuzz"/> (linked to graphite2),
88 <xref linkend="icu"/>,
89 <xref linkend="libpng"/>,
90 <xref linkend="poppler"/>
91 </para>
92
93 <bridgehead renderas="sect4">Optional</bridgehead>
94 <para role="optional">
95 <ulink url="http://www.fftw.org/">FFTW</ulink> can be used by asy.
96 </para>
97 <para>
98 The version of
99 <ulink
100 url="http://packages.debian.org/source/sid/libpaper">libpaper</ulink>
101 shipped with the source will be used unless you have installed a system
102 version and told it to use that.
103 </para>
104 <para role="optional">
105 <ulink url="http://www.gnu.org/software/clisp/">clisp</ulink> is a build-time
106 dependency for xindy, see <filename>utils/xindy/README-clisp</filename>.
107 </para>
108 <para>
109 The source ships with its own versions of several libraries which are either
110 not under active development, or only used for limited functionality. If
111 you install these, as with some other optional dependencies in this book you
112 will need to tell <command>configure</command> to use the system versions.
113 <ulink url="http://libgd.bitbucket.org">GD</ulink>,
114 <ulink url="http://fossies.org/linux/misc/t1lib-5.1.2.tar.gz/">t1lib</ulink>,
115 <ulink url="http://sourceforge.net/projects/zziplib/">ZZIPlib</ulink>,
116 <ulink url="http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&amp;id=TECkitDownloads">TECkit</ulink>
117 </para>
118
119 <bridgehead renderas="sect4">Runtime dependencies</bridgehead>
120 <para role="recommended">
121 Some (re-installed) scripts will use
122 <xref linkend="python2"/> or <xref linkend="ruby"/>.
123 </para>
124
125 <para condition="html" role="usernotes">User Notes:
126 <ulink url="&blfs-wiki;/texlive"/></para>
127
128 </sect2>
129
130 <sect2 role="installation">
131 <title>Installation of TeX Live</title>
132
133 <para>These instructions will overwrite the corresponding files from the
134 binary installer. As with the installer, change x86_64-linux to whatever
135 matches your architecture.</para>
136
137 <para>Please note that installing from source will recompile the binary
138 programs and recreate the <literal>man</literal> and <literal>info</literal>
139 files. It will also overwrite the scripts - some of these may be older
140 versions than those from the newer installer. It will <emphasis>not</emphasis>
141 recreate any of the following: the more than 200 symlinks in the
142 x86_64-linux directory (some are alternate names, many are pointers to
143 the scripts), html files, PDF files, licenses, README files, two config
144 files (<filename>texmf.cnf</filename> and <filename>texmfcnf.lua</filename>),
145 nor the many package and font files in
146 <filename class="directory">texmf-dist</filename> and
147 <filename class="directory">texmf-var</filename>, nor the files recording
148 the actions of the installer, and the <filename>ls-R</filename> files listing
149 what was originally installed.</para>
150
151 <para>At the moment, these instructions do not rebuild
152 <application>biber</application> or <application>xindy</application> which were
153 installed by the binary installer. See the "Special considerations for ..."
154 paragraphs of
155 <ulink url="http://tug.org/texlive/build.html">Building TeX Live</ulink>.
156 Asy and the rest of asymptote is by default not rebuilt, so we have to
157 separately run <command>configure</command> and <command>make</command> in its
158 directory.
159 </para>
160
161<screen><userinput>mkdir texlive-build &amp;&amp;
162cd texlive-build &amp;&amp;
163
164../configure \
165 --prefix=/opt/texlive/&texlive-year; \
166 --bindir=/opt/texlive/&texlive-year;/bin/x86_64-linux \
167 --datarootdir=/opt/texlive/&texlive-year; \
168 --includedir=/usr/include \
169 --infodir=/opt/texlive/&texlive-year;/texmf-dist/doc/info \
170 --libdir=/usr/lib \
171 --mandir=/opt/texlive/&texlive-year;/texmf-dist/doc/man \
172 --disable-native-texlive-build \
173 --disable-static --enable-shared \
174 --with-system-cairo \
175 --with-system-fontconfig \
176 --with-system-freetype2 \
177 --with-system-graphite2 \
178 --with-system-harfbuzz \
179 --with-system-icu \
180 --with-system-libgs \
181 --with-system-libpng \
182 --with-system-pixman \
183 --with-system-poppler \
184 --with-system-xpdf \
185 --with-system-zlib \
186 --with-banner-add=" - BLFS"</userinput></screen>
187
188 <para>Asymptote has to be separately configured. It ships with its own copy
189 of the gc source tarball, and will only use the system version if that local
190 source is removed.
191 </para>
192
193<screen><userinput>pushd ../utils/asymptote &amp;&amp;
194 rm -v gc-7.4.0.tar.gz &amp;&amp;
195
196 echo "ac_cv_lib_m_sqrt=yes" >config.cache &amp;&amp;
197 echo "ac_cv_lib_z_deflate=yes" >>config.cache &amp;&amp;
198
199./configure LIBS="-ltirpc " \
200 --prefix=/opt/texlive/&texlive-year;/ \
201 --bindir=/opt/texlive/&texlive-year;/bin/x86_64-linux \
202 --enable-texlive-build \
203 --datarootdir=/opt/texlive/&texlive-year;/texmf-dist \
204 --infodir=/opt/texlive/&texlive-year;/texmf-dist/doc/info \
205 --mandir=/opt/texlive/&texlive-year;/texmf-dist/doc/man \
206 --cache-file=config.cache &amp;&amp;
207popd &amp;&amp;
208
209make &amp;&amp;
210make -C ../utils/asymptote</userinput></screen>
211
212 <para>To test the results, issue: <command>make -k check &amp;&amp;
213 make -C utils/asymptote check</command>.</para>
214
215 <para>Now, as the <systemitem class="username">root</systemitem>
216 user:</para>
217
218<screen><userinput role="root">make install &amp;&amp;
219make -C ../utils/asymptote install</userinput></screen>
220
221 </sect2>
222
223 <sect2 role="commands">
224 <title>Command Explanations</title>
225
226 <para>
227 <parameter>--prefix=, --bindir=, --datarootdir=, --infodir=, --mandir= ...
228 </parameter>: these switches ensure that the files installed from source
229 will overwrite the corresponding files previously installed by
230 <application>install-tl</application>.
231 </para>
232
233 <para>
234 <parameter>--includedir=, --libdir= ...</parameter> : these switches ensure
235 that the libraries will be found at runtime, and that programs can be
236 compiled against them.
237 </para>
238
239 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
240 href="../../xincludes/static-libraries.xml"/>
241
242 <para>
243 <parameter>--enable-shared</parameter>: Use shared versions of
244 <filename class="libraryfile">libkpathsea</filename> and
245 <filename class="libraryfile">libptexenc</filename>.
246 </para>
247
248 <para>
249 <parameter>--with-system-...</parameter>: Unless this parameter is used,
250 the included versions of these libraries will be statically compiled
251 into the programs which need them. If you decided not to install a
252 recommended library, omit the corresponding switches.
253 </para>
254
255 <para>
256 <parameter>--with-system-xpdf</parameter>: Uniquely, this parameter has
257 a non-standard meaning, it tells <command>configure</command> to use the
258 system-installed <application>poppler</application> headers and library.
259 Again, omit this if you have not installed
260 <application>poppler</application>.
261 </para>
262
263 <para>
264 <parameter>echo "ac_cv_lib_m_sqrt=yes" ... LIBS="-ltirpc " &gt;config.cache,
265 ... --cache-file=config.cache</parameter> : The configure scripts in
266 <application>TeX Live</application> are uncommon. Asymptote not only has to
267 be separately configured and built, the configure script fails to find the
268 shared <filename class="libraryfile">libtirpc.so</filename>. Passing that
269 in LIBS breaks the tests for (static) libm and (shared) libz, so we have to
270 fix things up, in much the same way as when cross-compiling.
271 </para>
272
273 <para>
274 <option>--without-x</option>: use this (and omit the configure and make in
275 <filename>utils/asymptote</filename> if you do not have Xorg installed.
276 </para>
277
278 </sect2>
279
280 <sect2 role="content">
281 <title>Contents</title>
282
283 <segmentedlist>
284 <segtitle>Installed Programs</segtitle>
285 <segtitle>Installed Libraries</segtitle>
286 <segtitle>Installed Directories</segtitle>
287
288 <seglistitem>
289 <seg>Over 300 binaries and symlinks to scripts</seg>
290 <seg>libkpathsea.so, libptexenc.so</seg>
291 <seg>/opt/texlive, /usr/include/kpathsea, /usr/include/ptexenc</seg>
292 </seglistitem>
293 </segmentedlist>
294
295 <variablelist>
296 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
297 <?dbfo list-presentation="list"?>
298 <?dbhtml list-presentation="table"?>
299
300 <varlistentry id="texlive-programs">
301 <term><command>TeX&nbsp;programs</command></term>
302 <listitem>
303 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
304 href="../../xincludes/texprogs.xml"/>
305 <indexterm zone="texlive texlive-programs">
306 <primary sortas="b-texlive-programs">TeX Live programs</primary>
307 </indexterm>
308 </listitem>
309 </varlistentry>
310
311 <varlistentry id="libkpathsea">
312 <term><filename class="libraryfile">libkpathsea.so</filename></term>
313 <listitem>
314 <para>
315 (kpathsearch) exists to look up a file in a list of directories.
316 </para>
317 <indexterm zone="texlive libkpathsea">
318 <primary sortas="c-libkpathsea">libkpathsea.so</primary>
319 </indexterm>
320 </listitem>
321 </varlistentry>
322
323 <varlistentry id="libptexenc">
324 <term><filename class="libraryfile">libptexenc.so</filename></term>
325 <listitem>
326 <para>
327 is a library for Japanese pTeX (publishing TeX).
328 </para>
329 <indexterm zone="texlive libptexenc">
330 <primary sortas="c-libptexenc">libptexenc.so</primary>
331 </indexterm>
332 </listitem>
333 </varlistentry>
334 </variablelist>
335
336 </sect2>
337
338</sect1>
Note: See TracBrowser for help on using the repository browser.