[eb38c8a] | 1 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
| 2 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
| 3 | <!ENTITY % general-entities SYSTEM "../../general.ent">
|
---|
| 4 | %general-entities;
|
---|
| 5 |
|
---|
[396abe0] | 6 | <!-- utah -->
|
---|
| 7 | <!ENTITY texlive-download-http "https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/&texlive-year;/texlive-&texlive-version;-source.tar.xz">
|
---|
[e1e58be] | 8 | <!ENTITY texlive-download-ftp " ">
|
---|
[adfe27c] | 9 | <!ENTITY texlive-md5sum "1da2f08e3ba4a3708870dd088c1d6823">
|
---|
| 10 | <!ENTITY texlive-size "67 MB">
|
---|
[eb38c8a] | 11 |
|
---|
[f2cd7f9] | 12 | <!ENTITY texlive-buildsize "9.1 GB including the additional download and the tests, 8.3 GB installed">
|
---|
| 13 | <!ENTITY texlive-time "4.6 SBU including the additional download and the tests, building with parallelism=4">
|
---|
[eb38c8a] | 14 |
|
---|
[396abe0] | 15 | <!-- utah -->
|
---|
| 16 | <!ENTITY texlive-texmf-download-http "https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/&texlive-year;/texlive-&texlive-version;-texmf.tar.xz">
|
---|
[e1e58be] | 17 | <!ENTITY texlive-texmf-download-ftp " ">
|
---|
[adfe27c] | 18 | <!ENTITY texlive-texmf-md5sum "e67ce334dd0fddda5f4a87b4fcaaf48f">
|
---|
| 19 | <!ENTITY texlive-texmf-size "4.0 GB">
|
---|
[eb38c8a] | 20 |
|
---|
[adfe27c] | 21 | <!ENTITY texlive-extra-download-http "https://ftp.tu-chemnitz.de/pub/tug/historic/systems/texlive/&texlive-year;/texlive-&texlive-version;-extra.tar.xz">
|
---|
| 22 | <!ENTITY texlive-extra-download-ftp " ">
|
---|
| 23 | <!ENTITY texlive-extra-md5sum "1bd045bd1673ce61bde590c10b86c6cc">
|
---|
| 24 | <!ENTITY texlive-extra-size "1.9 MB">
|
---|
[322aff6] | 25 |
|
---|
[e1b72e2] | 26 | <!-- The following commit will change future installs so that the scripts in
|
---|
| 27 | texmf-dist linked from bin/ are copied instead of symlinks.
|
---|
| 28 |
|
---|
| 29 | commit 0c9707142465610f0e22745a22bf8c71850cef49
|
---|
| 30 | Author: Karl Berry <karl@freefriends.org>
|
---|
| 31 | Date: Tue Mar 19 22:03:22 2024 +0000
|
---|
| 32 |
|
---|
| 33 | (%opts): create the generically-named output files as copies by default.
|
---|
| 34 | (@cmdline_options): allow -no-copy.
|
---|
| 35 | (help): document.
|
---|
| 36 |
|
---|
| 37 |
|
---|
| 38 | git-svn-id: svn://tug.org/texlive/trunk@70707 c570f23f-e606-0410-a88d-b1316a301751
|
---|
| 39 |
|
---|
| 40 | That was done to simplify the process (windows has always used copy) and will likely
|
---|
| 41 | make the installed sizes somewhat bigger.
|
---|
| 42 |
|
---|
[73089ed3] | 43 | There is an option \-\-no-copy for updmap.pl, unclear if that can be used here,
|
---|
[e1b72e2] | 44 | and it might have been removed by next year. -->
|
---|
[eb38c8a] | 45 | ]>
|
---|
| 46 |
|
---|
| 47 |
|
---|
[347e59c] | 48 | <sect1 id="texlive" xreflabel="texlive-&texlive-version;">
|
---|
| 49 | <?dbhtml filename="texlive.html"?>
|
---|
[eb38c8a] | 50 |
|
---|
| 51 |
|
---|
[347e59c] | 52 | <title>texlive-&texlive-version;-source</title>
|
---|
[eb38c8a] | 53 |
|
---|
[347e59c] | 54 | <indexterm zone="texlive">
|
---|
| 55 | <primary sortas="a-texlive">texlive</primary>
|
---|
[eb38c8a] | 56 | </indexterm>
|
---|
| 57 |
|
---|
| 58 | <sect2 role="package">
|
---|
[347e59c] | 59 | <title>Introduction to TeX Live from source</title>
|
---|
[eb38c8a] | 60 |
|
---|
[396abe0] | 61 | <note>
|
---|
| 62 | <para>
|
---|
| 63 | According to <ulink url="https://www.tug.org/historic/"/> the master
|
---|
| 64 | site in France only supports ftp and rsync. Now that ftp is generally
|
---|
| 65 | deprecated, that page has links to mirrors, some of which support https,
|
---|
[c9c6847] | 66 | e.g. in Utah and Chemnitz as well as in China. If you prefer to use a
|
---|
[396abe0] | 67 | different mirror from the example links here, you will need to navigate
|
---|
| 68 | to systems/historic/texlive/&texlive-year; or systems/texlive/&texlive-year;
|
---|
| 69 | as the case may be.
|
---|
[06643a68] | 70 | <!-- the Chinese mirrors do not use a 'historic' subdirectory. -->
|
---|
[396abe0] | 71 | </para>
|
---|
| 72 | </note>
|
---|
| 73 |
|
---|
[fa3edfef] | 74 | <para>
|
---|
| 75 | Most of TeX Live can be built from source without a pre-existing
|
---|
| 76 | installation, but <application>xindy</application> (for indexing) needs
|
---|
| 77 | working versions of <command>latex</command> and
|
---|
[48771ae] | 78 | <command>pdflatex</command> when configure is run, and the test suite
|
---|
[fa3edfef] | 79 | and install for <command>asy</command> (for vector graphics) will fail
|
---|
| 80 | if TeX has not already been installed. Additionally,
|
---|
| 81 | <application>biber</application> is not provided within the
|
---|
[26e8824] | 82 | <application>texlive</application> source and the version of
|
---|
| 83 | <application>dvisvgm</application> in the
|
---|
| 84 | <application>texlive</application> tree cannot be built
|
---|
| 85 | if shared system libraries are used.
|
---|
[fa3edfef] | 86 | </para>
|
---|
| 87 |
|
---|
[26e8824] | 88 | <para>
|
---|
| 89 | </para>
|
---|
[fa3edfef] | 90 | <para>
|
---|
| 91 | All of those packages are dealt with on their own pages and can be
|
---|
| 92 | built after installing this package. If you have not already done so, you
|
---|
| 93 | should start at <xref linkend="tex-path"/> so that the final commands to
|
---|
[ed3707e] | 94 | initialize the new installation will be found.
|
---|
[fa3edfef] | 95 | </para>
|
---|
[eb38c8a] | 96 |
|
---|
[1cd77c3] | 97 | &lfs122_checked;
|
---|
[eb38c8a] | 98 |
|
---|
| 99 | <bridgehead renderas="sect3">Package Information</bridgehead>
|
---|
| 100 | <itemizedlist spacing="compact">
|
---|
| 101 | <listitem>
|
---|
[fa3edfef] | 102 | <para>
|
---|
| 103 | Download (HTTP): <ulink url="&texlive-download-http;"/>
|
---|
| 104 | </para>
|
---|
[eb38c8a] | 105 | </listitem>
|
---|
| 106 | <listitem>
|
---|
[fa3edfef] | 107 | <para>
|
---|
| 108 | Download (FTP): <ulink url="&texlive-download-ftp;"/>
|
---|
| 109 | </para>
|
---|
[eb38c8a] | 110 | </listitem>
|
---|
| 111 | <listitem>
|
---|
[fa3edfef] | 112 | <para>
|
---|
| 113 | Download MD5 sum: &texlive-md5sum;
|
---|
| 114 | </para>
|
---|
[eb38c8a] | 115 | </listitem>
|
---|
| 116 | <listitem>
|
---|
[fa3edfef] | 117 | <para>
|
---|
| 118 | Download size: &texlive-size;
|
---|
| 119 | </para>
|
---|
[eb38c8a] | 120 | </listitem>
|
---|
| 121 | <listitem>
|
---|
[fa3edfef] | 122 | <para>
|
---|
| 123 | Estimated disk space required: &texlive-buildsize;
|
---|
| 124 | </para>
|
---|
[eb38c8a] | 125 | </listitem>
|
---|
| 126 | <listitem>
|
---|
[fa3edfef] | 127 | <para>
|
---|
| 128 | Estimated build time: &texlive-time;
|
---|
| 129 | </para>
|
---|
[eb38c8a] | 130 | </listitem>
|
---|
| 131 | </itemizedlist>
|
---|
| 132 |
|
---|
[5e61060f] | 133 | <bridgehead renderas="sect3">Required Additional Downloads</bridgehead>
|
---|
[eb38c8a] | 134 |
|
---|
[fa3edfef] | 135 | <para>
|
---|
| 136 | Much of the texlive environment (including scripts, documentation,
|
---|
| 137 | fonts, and various other files) is not part of the source tarball.
|
---|
| 138 | You must download it separately. This will give you all of the
|
---|
| 139 | additional files which are provided by a full install of the binary
|
---|
[5dee803] | 140 | version, as there is no realistic way to restrict which parts get
|
---|
[fa3edfef] | 141 | installed.
|
---|
| 142 | </para>
|
---|
[eb38c8a] | 143 |
|
---|
| 144 | <para>
|
---|
| 145 | Because of the size of this package, it is unlikely to be mirrored by
|
---|
[5dee803] | 146 | BLFS mirrors. If you are unable to download the files for this package,
|
---|
| 147 | go to https://www.ctan.org/mirrors/ to find a more-accessible mirror.
|
---|
[eb38c8a] | 148 | </para>
|
---|
| 149 |
|
---|
| 150 | <itemizedlist spacing="compact">
|
---|
[91b7b02] | 151 | <listitem>
|
---|
[fa3edfef] | 152 | <para>
|
---|
| 153 | Download (HTTP): <ulink url="&texlive-texmf-download-http;"/>
|
---|
| 154 | </para>
|
---|
[91b7b02] | 155 | </listitem>
|
---|
[eb38c8a] | 156 | <listitem>
|
---|
[fa3edfef] | 157 | <para>
|
---|
| 158 | Download (FTP): <ulink url="&texlive-texmf-download-ftp;"/>
|
---|
| 159 | </para>
|
---|
[eb38c8a] | 160 | </listitem>
|
---|
| 161 | <listitem>
|
---|
[fa3edfef] | 162 | <para>
|
---|
| 163 | Download MD5 sum: &texlive-texmf-md5sum;
|
---|
| 164 | </para>
|
---|
[eb38c8a] | 165 | </listitem>
|
---|
| 166 | <listitem>
|
---|
[fa3edfef] | 167 | <para>
|
---|
| 168 | Download size: &texlive-texmf-size;
|
---|
| 169 | </para>
|
---|
[eb38c8a] | 170 | </listitem>
|
---|
[8558044] | 171 | </itemizedlist>
|
---|
[322aff6] | 172 |
|
---|
| 173 | <para>
|
---|
[adfe27c] | 174 | The tlpdb database is shipped as a separate tarball. The
|
---|
| 175 | <command>texdoc</command> program needs a cache file derived
|
---|
| 176 | from this (and will create the cache on its first run).
|
---|
[322aff6] | 177 | </para>
|
---|
| 178 |
|
---|
| 179 | <itemizedlist spacing="compact">
|
---|
| 180 | <listitem>
|
---|
| 181 | <para>
|
---|
[adfe27c] | 182 | Download (HTTP): <ulink url="&texlive-extra-download-http;"/>
|
---|
[322aff6] | 183 | </para>
|
---|
| 184 | </listitem>
|
---|
| 185 | <listitem>
|
---|
| 186 | <para>
|
---|
[adfe27c] | 187 | Download (FTP): <ulink url="&texlive-extra-download-ftp;"/>
|
---|
[322aff6] | 188 | </para>
|
---|
| 189 | </listitem>
|
---|
| 190 | <listitem>
|
---|
| 191 | <para>
|
---|
[adfe27c] | 192 | Download MD5 sum: &texlive-extra-md5sum;
|
---|
[322aff6] | 193 | </para>
|
---|
| 194 | </listitem>
|
---|
| 195 | <listitem>
|
---|
| 196 | <para>
|
---|
[adfe27c] | 197 | Download size: &texlive-extra-size;
|
---|
[322aff6] | 198 | </para>
|
---|
| 199 | </listitem>
|
---|
| 200 |
|
---|
[a661bd73] | 201 | <listitem>
|
---|
[fa3edfef] | 202 | <para>
|
---|
| 203 | Required patch: <ulink url=
|
---|
[a661bd73] | 204 | "&patch-root;/texlive-&texlive-version;-source-upstream_fixes-1.patch"/>
|
---|
[fa3edfef] | 205 | </para>
|
---|
[a661bd73] | 206 | </listitem>
|
---|
[eb38c8a] | 207 | </itemizedlist>
|
---|
| 208 |
|
---|
[347e59c] | 209 | <bridgehead renderas="sect3">TeX Live from source Dependencies</bridgehead>
|
---|
[eb38c8a] | 210 |
|
---|
| 211 | <bridgehead renderas="sect4">Recommended</bridgehead>
|
---|
| 212 | <para role="recommended">
|
---|
| 213 | <xref linkend="x-window-system"/>
|
---|
| 214 | </para>
|
---|
[d7f0b08] | 215 |
|
---|
[c30eed1e] | 216 | <!-- text for recommended libraries -->
|
---|
[d7f0b08] | 217 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
| 218 | href="../../xincludes/texrecommendlibs.xml"/>
|
---|
[eb38c8a] | 219 |
|
---|
[6153e75] | 220 | <!-- the following ensures jhalfs will set paths before running texlive -->
|
---|
| 221 |
|
---|
| 222 | <para role="recommended">
|
---|
| 223 | Furthermore, the instructions below assume you are using the layout
|
---|
| 224 | described in <xref linkend="tex-path"/>.
|
---|
| 225 | </para>
|
---|
| 226 |
|
---|
[eb38c8a] | 227 | <bridgehead renderas="sect4">Optional</bridgehead>
|
---|
[c30eed1e] | 228 | <!-- text for optional deps -->
|
---|
[d7f0b08] | 229 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
| 230 | href="../../xincludes/texoptional.xml"/>
|
---|
[eb38c8a] | 231 |
|
---|
| 232 | <bridgehead renderas="sect4">Runtime dependencies</bridgehead>
|
---|
[347e59c] | 233 | <!-- text for runtime deps, shared with tl-installer -->
|
---|
[d7f0b08] | 234 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
| 235 | href="../../xincludes/texruntime.xml"/>
|
---|
[eb38c8a] | 236 |
|
---|
| 237 | </sect2>
|
---|
| 238 |
|
---|
| 239 | <sect2 role="installation">
|
---|
[347e59c] | 240 | <title>Installation of TeX Live</title>
|
---|
[eb38c8a] | 241 |
|
---|
| 242 | <para>
|
---|
[347e59c] | 243 | Install TeX Live by running the following commands:
|
---|
[eb38c8a] | 244 | </para>
|
---|
| 245 |
|
---|
[26e8824] | 246 | <caution>
|
---|
[09a2590] | 247 | <para>
|
---|
[00a3154] | 248 | If you wish to upgrade to current <application>texlive</application>
|
---|
[1b32f1a] | 249 | on an older system where extra packages (<application>asymptote</application>,
|
---|
[a48a3d2] | 250 | <!-- Ken: comment biber - usually a new texyear has brought a new version
|
---|
| 251 | but not so far for 2024. Looking at what it installs it is only perl
|
---|
| 252 | modules and their man pages so those ought to still exist after the
|
---|
| 253 | previous year's texlive has been removed.
|
---|
| 254 | <application>biber</application>, -->
|
---|
| 255 | <application>dvisvgm</application>, or
|
---|
[26e8824] | 256 | <application>xindy</application>) have been installed, you will need to
|
---|
| 257 | reinstall those as well as fixing up your <literal>PATH</literal> for
|
---|
[ed3707e] | 258 | <literal>$TEXLIVE_PREFIX</literal>.
|
---|
[26e8824] | 259 | </para>
|
---|
| 260 | </caution>
|
---|
| 261 |
|
---|
[f594857] | 262 | <note>
|
---|
| 263 | <para>
|
---|
[26e8824] | 264 | A successful install requires some texlive
|
---|
[f594857] | 265 | commands to be run as the root user, so we will export the TEXARCH
|
---|
[5dee803] | 266 | variable to let &root; use it.
|
---|
[f594857] | 267 | </para>
|
---|
| 268 | </note>
|
---|
| 269 |
|
---|
| 270 | <para>
|
---|
| 271 | Now, as a normal user:
|
---|
| 272 | </para>
|
---|
[00a3154] | 273 |
|
---|
[adfe27c] | 274 | <!-- if a patch for the source is needed, this should go between the export
|
---|
| 275 | ande configure. But keeping it there as a commented line adds too much vertical space.
|
---|
| 276 | patch -Np1 -i ../texlive-&texlive-version;-source-security_fix-1.patch &&-->
|
---|
[ed3707e] | 277 | <screen><userinput>export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &&
|
---|
[5e61060f] | 278 |
|
---|
[a661bd73] | 279 | patch -Np1 -i ../texlive-&texlive-version;-source-upstream_fixes-1.patch &&
|
---|
| 280 |
|
---|
[eb38c8a] | 281 | mkdir texlive-build &&
|
---|
[ed3707e] | 282 | cd texlive-build &&
|
---|
| 283 |
|
---|
[067cb082] | 284 | ../configure -C \
|
---|
[ed3707e] | 285 | --prefix=$TEXLIVE_PREFIX \
|
---|
| 286 | --bindir=$TEXLIVE_PREFIX/bin/$TEXARCH \
|
---|
| 287 | --datarootdir=$TEXLIVE_PREFIX \
|
---|
| 288 | --includedir=$TEXLIVE_PREFIX/include \
|
---|
| 289 | --infodir=$TEXLIVE_PREFIX/texmf-dist/doc/info \
|
---|
| 290 | --libdir=$TEXLIVE_PREFIX/lib \
|
---|
| 291 | --mandir=$TEXLIVE_PREFIX/texmf-dist/doc/man \
|
---|
| 292 | --disable-native-texlive-build \
|
---|
| 293 | --disable-static --enable-shared \
|
---|
| 294 | --disable-dvisvgm \
|
---|
| 295 | --with-system-cairo \
|
---|
| 296 | --with-system-fontconfig \
|
---|
| 297 | --with-system-freetype2 \
|
---|
| 298 | --with-system-gmp \
|
---|
| 299 | --with-system-graphite2 \
|
---|
| 300 | --with-system-harfbuzz \
|
---|
| 301 | --with-system-icu \
|
---|
| 302 | --with-system-libgs \
|
---|
| 303 | --with-system-libpaper \
|
---|
| 304 | --with-system-libpng \
|
---|
| 305 | --with-system-mpfr \
|
---|
| 306 | --with-system-pixman \
|
---|
| 307 | --with-system-zlib \
|
---|
[eb38c8a] | 308 | --with-banner-add=" - BLFS" &&
|
---|
| 309 |
|
---|
[00a3154] | 310 | make</userinput></screen>
|
---|
[eb38c8a] | 311 |
|
---|
[fa3edfef] | 312 | <para>
|
---|
[7eaa163e] | 313 | To test the results, issue: <command>make -k check</command>.
|
---|
[8790467] | 314 | <!-- https://github.com/rrthomas/libpaper/issues/43 -->
|
---|
| 315 | One test <filename>psutils.test</filename> is known to fail if
|
---|
| 316 | using system libpaper because TeX Live includes old versions of both
|
---|
| 317 | <application>psutils</application> and <application>libpaper</application>
|
---|
| 318 | which result in a difference in the final decimal places of the psresize
|
---|
| 319 | test. The <application>libpaper</application> developer does not think
|
---|
| 320 | this is significant.
|
---|
[fa3edfef] | 321 | </para>
|
---|
[eb38c8a] | 322 |
|
---|
[fa3edfef] | 323 | <para>
|
---|
| 324 | Now, as the <systemitem class="username">root</systemitem> user:
|
---|
| 325 | </para>
|
---|
[eb38c8a] | 326 |
|
---|
[c74eb3a] | 327 | <!-- Editors, you can run 'make texlinks' in a DESTDIR by passing
|
---|
[8790467] | 328 | DESTDIR=some/where -->
|
---|
[f594857] | 329 | <screen role="root"><userinput>make install-strip &&
|
---|
[ed3707e] | 330 | make texlinks &&
|
---|
| 331 | mkdir -pv $TEXLIVE_PREFIX/tlpkg/TeXLive/ &&
|
---|
| 332 | install -v -m644 ../texk/tests/TeXLive/* $TEXLIVE_PREFIX/tlpkg/TeXLive/ &&
|
---|
[844a3acb] | 333 | tar -xf ../../texlive-&texlive-version;-extra.tar.xz -C $TEXLIVE_PREFIX/tlpkg --strip-components=2</userinput></screen>
|
---|
[eb38c8a] | 334 |
|
---|
[f594857] | 335 | <note>
|
---|
| 336 | <para>
|
---|
| 337 | Only run <command>make texlinks</command> once. If it is rerun,
|
---|
| 338 | it can change all the program symlinks so that they point to
|
---|
| 339 | themselves and are useless.
|
---|
| 340 | </para>
|
---|
| 341 | </note>
|
---|
| 342 |
|
---|
[fa3edfef] | 343 | <para>
|
---|
| 344 | Now install the additional files as the
|
---|
| 345 | <systemitem class="username">root</systemitem> user:
|
---|
| 346 | </para>
|
---|
[eb38c8a] | 347 |
|
---|
[4107ac91] | 348 | <!-- if texmf does not need to be patched, remove && from first line,
|
---|
| 349 | close userinput, screen, comment pushd, patch, popd -->
|
---|
[ed3707e] | 350 | <screen role="root"><userinput>tar -xf ../../texlive-&texmf-version;-texmf.tar.xz -C $TEXLIVE_PREFIX --strip-components=1</userinput></screen>
|
---|
[f594857] | 351 |
|
---|
[fa3edfef] | 352 | <para>
|
---|
| 353 | Still as the <systemitem class="username">root</systemitem> user,
|
---|
[9167f8d] | 354 | initialize the new system (the command <command>fmtutil-sys
|
---|
| 355 | --all</command> will produce
|
---|
[fa3edfef] | 356 | a <emphasis>lot</emphasis> of output):
|
---|
| 357 | </para>
|
---|
[382aa90c] | 358 |
|
---|
[f5c9139] | 359 | <!-- Editors, fmtutil-sys can apparently only be run on
|
---|
[c74eb3a] | 360 | a real install, as root. But mktexlsr can be run in a DESTDIR with
|
---|
| 361 | cd /YOUR/TEXMF/ROOT ; ls -LAR ./ >ls-R -->
|
---|
| 362 |
|
---|
[382aa90c] | 363 | <screen role="root"><userinput>mktexlsr &&
|
---|
[9167f8d] | 364 | fmtutil-sys --all</userinput></screen>
|
---|
[eb38c8a] | 365 |
|
---|
[2eac7f7] | 366 | <para>
|
---|
[6d28de3] | 367 | To allow <xref linkend="evince"/> or <xref linkend="dvisvgm"/> to
|
---|
| 368 | link to <filename class="libraryfile">libkpathsea.so</filename>,
|
---|
| 369 | as the &root; user (re)create a symlink from
|
---|
| 370 | <filename class="directory">/usr/lib</filename>:
|
---|
[2eac7f7] | 371 | </para>
|
---|
| 372 |
|
---|
[11c151b1] | 373 | <screen role="root"><userinput>ln -svf $TEXLIVE_PREFIX/lib/libkpathsea.so{,.6} /usr/lib</userinput></screen>
|
---|
[2eac7f7] | 374 |
|
---|
[a9b0c5e] | 375 | <note>
|
---|
| 376 | <para>
|
---|
[2e099a8] | 377 | TeX Live does not include the source for ConTeXt, only the items that
|
---|
[0c60ebd9] | 378 | are at CTAN. Trying to build ConTeXt purely from source on a BLFS
|
---|
[2e099a8] | 379 | TeX Live system is a niche usage and looks as if it will be more trouble
|
---|
[0c60ebd9] | 380 | than it is worth.
|
---|
[a9b0c5e] | 381 | </para>
|
---|
[67f75011] | 382 |
|
---|
| 383 | <para>
|
---|
[0c60ebd9] | 384 | If you wish to use ConTeXt with <command>luametatex</command> (most of
|
---|
[2e099a8] | 385 | the old MKII and MKIV code was removed from TeX Live 2023 by the ConTeXt
|
---|
[d98aa3ab] | 386 | developer), starting with the binary (only installing ConTeXt, 753 MB in
|
---|
| 387 | March 2024) would probably be the easiest way to bootstrap it. The source
|
---|
| 388 | for <command>luametatex</command> can be pulled with git from <ulink
|
---|
[0c60ebd9] | 389 | url="https://github.com/contextgarden/luametatex/tags">github
|
---|
| 390 | luametatex</ulink>, compiled with meson and ninja, and installed by
|
---|
| 391 | copying to the correct program directory. This should avoid having to
|
---|
| 392 | fix all the symlinks etc and also avoid including the many unrelated
|
---|
| 393 | <!-- trying to use a filename tag here is rejected within para ?? -->
|
---|
| 394 | parts of texmf-dist.
|
---|
| 395 | See comments 1 to 5 of
|
---|
| 396 | <ulink url="&blfs-ticket-root;17823">#17823</ulink>.
|
---|
[67f75011] | 397 | </para>
|
---|
[a9b0c5e] | 398 | </note>
|
---|
| 399 |
|
---|
[fa3edfef] | 400 | <para>
|
---|
| 401 | You can now proceed to <xref linkend="asymptote"/>,
|
---|
[26e8824] | 402 | <xref linkend="biber"/>, <xref linkend="dvisvgm"/> and / or <xref
|
---|
| 403 | linkend="xindy"/> if you wish to install them.
|
---|
[fa3edfef] | 404 | </para>
|
---|
[eb38c8a] | 405 |
|
---|
| 406 | </sect2>
|
---|
| 407 |
|
---|
| 408 | <sect2 role="commands">
|
---|
| 409 | <title>Command Explanations</title>
|
---|
| 410 |
|
---|
[067cb082] | 411 | <para>
|
---|
[5dee803] | 412 | <command>-C</command>: creates config.cache, which saves significant
|
---|
[067cb082] | 413 | time in a parallel build.
|
---|
| 414 | </para>
|
---|
| 415 |
|
---|
[d7f0b08] | 416 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
| 417 | href="../../xincludes/tex-prefix.xml"/>
|
---|
[eb38c8a] | 418 |
|
---|
[d7f0b08] | 419 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
| 420 | href="../../xincludes/tex-lib.xml"/>
|
---|
[eb38c8a] | 421 |
|
---|
| 422 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
| 423 | href="../../xincludes/static-libraries.xml"/>
|
---|
| 424 |
|
---|
[d7f0b08] | 425 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
| 426 | href="../../xincludes/tex-shared.xml"/>
|
---|
[eb38c8a] | 427 |
|
---|
[d7f0b08] | 428 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
| 429 | href="../../xincludes/tex-system.xml"/>
|
---|
[30be81d] | 430 | <!--
|
---|
[d7f0b08] | 431 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
[30be81d] | 432 | href="../../xincludes/tex-xpdf.xml"/>-->
|
---|
[eb38c8a] | 433 |
|
---|
[06fd9a2] | 434 | <para>
|
---|
[0c60ebd9] | 435 | <parameter>--disable-dvisvgm</parameter>: As noted above, the shipped version
|
---|
[06fd9a2] | 436 | of dvisvgm, which has modified configuration files, cannot be built with
|
---|
| 437 | shared system libraries.
|
---|
| 438 | </para>
|
---|
| 439 |
|
---|
[eb38c8a] | 440 | <para>
|
---|
[1a518e97] | 441 | <command>make texlinks</command> : this runs the texlinks.sh script
|
---|
[382aa90c] | 442 | to create symbolic links from formats to engines. In
|
---|
[eb38c8a] | 443 | practice, several of the targets such as <command>xetex</command> are now
|
---|
| 444 | separate binaries and for these it will report "file already exists".
|
---|
| 445 | </para>
|
---|
[f594857] | 446 |
|
---|
[eb38c8a] | 447 | <para>
|
---|
[ed3707e] | 448 | <command>tar -xf texlive-&texmf-version;-texmf.tar.xz -C $TEXLIVE_PREFIX --strip-components=1</command>:
|
---|
[eb38c8a] | 449 | the tarball contains the files for the texmf-dist directory, and because
|
---|
| 450 | of its size we do not want to waste time and space untarring it and then
|
---|
| 451 | copying the files.
|
---|
| 452 | </para>
|
---|
| 453 |
|
---|
[5e61060f] | 454 | <para>
|
---|
[1a518e97] | 455 | <command>install -v -m644 ../texk/tests/TeXLive/*
|
---|
[ed3707e] | 456 | $TEXLIVE_PREFIX/tlpkg/TeXLive/</command>: This puts the perl
|
---|
[f594857] | 457 | modules <filename>TLConfig.pm</filename> and <filename>TLUtils.pm</filename>
|
---|
| 458 | into the directory where the binary installer puts them - it is at the
|
---|
| 459 | start of the perl @INC@ PATH within texlive when installed using the above
|
---|
| 460 | configure switches. Without these modules, texlive is unusable.
|
---|
| 461 | </para>
|
---|
| 462 |
|
---|
| 463 | <para>
|
---|
[1a518e97] | 464 | <command>mktexlsr</command>: Create an <filename>ls-R</filename> file
|
---|
[f594857] | 465 | which lists what was installed - this is used by kpathsea to find files.
|
---|
| 466 | </para>
|
---|
| 467 |
|
---|
| 468 | <para>
|
---|
[17e976e3] | 469 | <command>fmtutil-sys --all</command>: This initializes the TeX formats,
|
---|
[f594857] | 470 | Metafont bases and Metapost mems.
|
---|
| 471 | </para>
|
---|
| 472 |
|
---|
[e029a45] | 473 | <para>
|
---|
| 474 | <option>--without-x</option>: use this if you do not have Xorg installed.
|
---|
| 475 | </para>
|
---|
| 476 |
|
---|
| 477 | <para>
|
---|
| 478 | There are many other '--disable' or '--without' options. Some of them such
|
---|
| 479 | as <option>--without-texinfo</option> are accepted but no longer do anything,
|
---|
| 480 | others will prevent a program being built - but the far greater amount of
|
---|
| 481 | space used for the related items in texmf means there is no obvious benefit
|
---|
| 482 | from disabling a few of the programs.
|
---|
| 483 | </para>
|
---|
| 484 |
|
---|
[eb38c8a] | 485 | </sect2>
|
---|
| 486 |
|
---|
| 487 | <sect2 role="content">
|
---|
| 488 | <title>Contents</title>
|
---|
| 489 |
|
---|
| 490 | <segmentedlist>
|
---|
| 491 | <segtitle>Installed Programs</segtitle>
|
---|
| 492 | <segtitle>Installed Libraries</segtitle>
|
---|
| 493 | <segtitle>Installed Directories</segtitle>
|
---|
| 494 |
|
---|
| 495 | <seglistitem>
|
---|
| 496 | <seg>Over 300 binaries and symlinks to scripts</seg>
|
---|
[1fe05eb] | 497 | <seg>libkpathsea.so,
|
---|
| 498 | libptexenc.so,
|
---|
| 499 | libsynctex.so,
|
---|
[ed3707e] | 500 | libtexlua52.so,
|
---|
| 501 | libtexluajit.so
|
---|
| 502 | </seg>
|
---|
[1fe05eb] | 503 | <seg>$TEXLIVE_PREFIX/bin,
|
---|
[ed3707e] | 504 | $TEXLIVE_PREFIX/include,
|
---|
[1fe05eb] | 505 | $TEXLIVE_PREFIX/lib,
|
---|
[ed3707e] | 506 | $TEXLIVE_PREFIX/texmf-dist
|
---|
| 507 | </seg>
|
---|
[eb38c8a] | 508 | </seglistitem>
|
---|
| 509 | </segmentedlist>
|
---|
| 510 |
|
---|
| 511 | <variablelist>
|
---|
| 512 | <bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
---|
| 513 | <?dbfo list-presentation="list"?>
|
---|
| 514 | <?dbhtml list-presentation="table"?>
|
---|
| 515 |
|
---|
[347e59c] | 516 | <varlistentry id="texlive-programs">
|
---|
[eb38c8a] | 517 | <term><command>TeX programs</command></term>
|
---|
| 518 | <listitem>
|
---|
| 519 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
| 520 | href="../../xincludes/texprogs.xml"/>
|
---|
[347e59c] | 521 | <indexterm zone="texlive texlive-programs">
|
---|
| 522 | <primary sortas="b-texlive-programs">TeX Live programs</primary>
|
---|
[eb38c8a] | 523 | </indexterm>
|
---|
| 524 | </listitem>
|
---|
| 525 | </varlistentry>
|
---|
| 526 |
|
---|
[347e59c] | 527 | <varlistentry id="libkpathsea">
|
---|
[eb38c8a] | 528 | <term><filename class="libraryfile">libkpathsea.so</filename></term>
|
---|
| 529 | <listitem>
|
---|
| 530 | <para>
|
---|
[1e7ef03] | 531 | (kpathsearch) exists to look up a file in a list of directories
|
---|
[4c24eb0a] | 532 | and is used by <command>kpsewhich</command>
|
---|
[eb38c8a] | 533 | </para>
|
---|
[347e59c] | 534 | <indexterm zone="texlive libkpathsea">
|
---|
[eb38c8a] | 535 | <primary sortas="c-libkpathsea">libkpathsea.so</primary>
|
---|
| 536 | </indexterm>
|
---|
| 537 | </listitem>
|
---|
| 538 | </varlistentry>
|
---|
| 539 |
|
---|
[347e59c] | 540 | <varlistentry id="libptexenc">
|
---|
[eb38c8a] | 541 | <term><filename class="libraryfile">libptexenc.so</filename></term>
|
---|
| 542 | <listitem>
|
---|
| 543 | <para>
|
---|
[4c24eb0a] | 544 | is a library for Japanese pTeX (publishing TeX)
|
---|
[eb38c8a] | 545 | </para>
|
---|
[347e59c] | 546 | <indexterm zone="texlive libptexenc">
|
---|
[eb38c8a] | 547 | <primary sortas="c-libptexenc">libptexenc.so</primary>
|
---|
| 548 | </indexterm>
|
---|
| 549 | </listitem>
|
---|
| 550 | </varlistentry>
|
---|
[f594857] | 551 |
|
---|
| 552 | <varlistentry id="libsynctex">
|
---|
| 553 | <term><filename class="libraryfile">libsynctex.so</filename></term>
|
---|
| 554 | <listitem>
|
---|
| 555 | <para>
|
---|
[4c24eb0a] | 556 | is the SyncTeX (Synchronize TeXnology) parser library
|
---|
[f594857] | 557 | </para>
|
---|
| 558 | <indexterm zone="texlive libsynctex">
|
---|
| 559 | <primary sortas="c-libsynctex">libsynctex.so</primary>
|
---|
| 560 | </indexterm>
|
---|
| 561 | </listitem>
|
---|
| 562 | </varlistentry>
|
---|
| 563 |
|
---|
| 564 | <varlistentry id="libtexlua52">
|
---|
| 565 | <term><filename class="libraryfile">libtexlua52.so</filename></term>
|
---|
| 566 | <listitem>
|
---|
| 567 | <para>
|
---|
[4c24eb0a] | 568 | provides Lua 5.2, modified for use with LuaTeX
|
---|
[f594857] | 569 | </para>
|
---|
| 570 | <indexterm zone="texlive libtexlua52">
|
---|
| 571 | <primary sortas="c-libtexlua52">libtexlua52.so</primary>
|
---|
| 572 | </indexterm>
|
---|
| 573 | </listitem>
|
---|
| 574 | </varlistentry>
|
---|
| 575 |
|
---|
| 576 | <varlistentry id="libtexluajit">
|
---|
| 577 | <term><filename class="libraryfile">libtexluajit.so</filename></term>
|
---|
| 578 | <listitem>
|
---|
| 579 | <para>
|
---|
[4c24eb0a] | 580 | provides LuaJIT, modified for use with LuaJITTeX
|
---|
[f594857] | 581 | </para>
|
---|
| 582 | <indexterm zone="texlive libtexluajit">
|
---|
| 583 | <primary sortas="c-libtexluajit">libtexluajit.so</primary>
|
---|
| 584 | </indexterm>
|
---|
| 585 | </listitem>
|
---|
| 586 | </varlistentry>
|
---|
[eb38c8a] | 587 | </variablelist>
|
---|
| 588 |
|
---|
| 589 | </sect2>
|
---|
| 590 |
|
---|
| 591 | </sect1>
|
---|