mirror of
https://github.com/Zeckmathederg/glfs.git
synced 2025-02-04 07:17:15 +08:00
ed3707eae3
Moved the profile script to texlive.sh from extrapaths.sh. Created an environment variable TEXLIVE_PREFIX and incorporated it into the chapter's build scripts. An additional optimization can still be made by moving the TEXARCH variable into texlive.sh and removing it from package instructions.
289 lines
9.5 KiB
XML
289 lines
9.5 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
<!ENTITY % general-entities SYSTEM "../../general.ent">
|
|
%general-entities;
|
|
|
|
<!ENTITY asymptote-download-http "&sourceforge-dl;/asymptote/asymptote-&asymptote-version;.src.tgz">
|
|
<!ENTITY asymptote-download-ftp " ">
|
|
<!ENTITY asymptote-md5sum "db3c45d5d142ef366f76843f5d424572">
|
|
<!ENTITY asymptote-size "15 MB">
|
|
<!ENTITY asymptote-buildsize "222 MB (55 MB installed,with all the dependencies which are within BLFS)">
|
|
<!-- with 2.68 the j1 time was 2.5 SBU, slow enough to use a parallel build -->
|
|
<!ENTITY asymptote-time "1.3 SBU (using parallelism=4)">
|
|
]>
|
|
|
|
<sect1 id="asymptote" xreflabel="asymptote-&asymptote-version;">
|
|
<?dbhtml filename="asymptote.html"?>
|
|
|
|
<sect1info>
|
|
<date>$Date$</date>
|
|
</sect1info>
|
|
|
|
<title>asymptote-&asymptote-version;</title>
|
|
|
|
<indexterm zone="asymptote">
|
|
<primary sortas="a-asymptote">asymptote</primary>
|
|
</indexterm>
|
|
|
|
<sect2 role="package">
|
|
<title>Introduction to asymptote</title>
|
|
|
|
<para>
|
|
<application>Asymptote</application> is a powerful descriptive vector
|
|
graphics language that provides a natural coordinate-based framework for
|
|
technical drawing. Labels and equations can be typeset with LaTeX. As
|
|
well as EPS, PDF and PNG output it can produce WebGL 3D HTML rendering
|
|
and (using <application>dvisvgm</application>) SVG output.
|
|
</para>
|
|
|
|
&lfs111_checked;
|
|
|
|
<bridgehead renderas="sect3">Package Information</bridgehead>
|
|
<itemizedlist spacing="compact">
|
|
<listitem>
|
|
<para>
|
|
Download (HTTP): <ulink url="&asymptote-download-http;"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download (FTP): <ulink url="&asymptote-download-ftp;"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download MD5 sum: &asymptote-md5sum;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download size: &asymptote-size;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Estimated disk space required: &asymptote-buildsize;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Estimated build time: &asymptote-time;
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<!--<bridgehead renderas="sect3">Additional Downloads</bridgehead>
|
|
<itemizedlist spacing="compact">
|
|
<listitem>
|
|
<para>
|
|
Required patch:
|
|
<ulink url="&patch-root;/asymptote-&asymptote-version;-upstream_fixes-1.patch"/>
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>-->
|
|
|
|
<bridgehead renderas="sect3">asymptote Dependencies</bridgehead>
|
|
|
|
<bridgehead renderas="sect4">Required</bridgehead>
|
|
<para role="required">
|
|
<xref linkend="gs"/> and
|
|
<xref linkend="texlive"/>
|
|
</para>
|
|
|
|
<bridgehead renderas="sect4">Recommended</bridgehead>
|
|
<para role="recommended">
|
|
<xref linkend="curl"/>,
|
|
<xref linkend="freeglut"/>,
|
|
<xref linkend="gc"/>,
|
|
<xref linkend="glew"/>,
|
|
<xref linkend="glm"/> and
|
|
<xref linkend="libtirpc"/>
|
|
</para>
|
|
|
|
<bridgehead renderas="sect4">Recommended at runtime</bridgehead>
|
|
<para role="recommended">
|
|
<xref role="runtime" linkend="dvisvgm"/>
|
|
</para>
|
|
|
|
<bridgehead renderas="sect4">Optional</bridgehead>
|
|
<para role="optional">
|
|
<xref linkend="fftw"/>,
|
|
<xref linkend="gsl"/>,
|
|
<xref linkend="libsigsegv"/>,
|
|
both <xref linkend="boost"/> and
|
|
<ulink url="https://github.com/Tencent/rapidjson/releases/">rapidjson</ulink>
|
|
to use
|
|
<ulink url="https://microsoft.github.io/language-server-protocol/implementors/tools/">LSP</ulink>
|
|
which can be used with
|
|
<ulink url="https://asymptote.sourceforge.io/doc/Language-server-protocol.html#index-LSP/">emacs</ulink>
|
|
</para>
|
|
|
|
<bridgehead renderas="sect4">Optional (at runtime)</bridgehead>
|
|
<para role="optional">
|
|
<xref linkend="imagemagick"/> to convert output to other formats such as
|
|
JPEG or to create animated GIFs,
|
|
<ulink url="https://pypi.org/project/PyQt5/">PyQt5</ulink> (not tested,
|
|
has a build dependency of <xref linkend="qt5"/>) to use xasy.
|
|
</para>
|
|
|
|
<para condition="html" role="usernotes">
|
|
User Notes: <ulink url="&blfs-wiki;/asymptote"/>
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 role="installation">
|
|
<title>Installation of asymptote</title>
|
|
|
|
<!-- Editors: for testing this, the minimal latex functionality is
|
|
covered by the cylinder and triangle tests in
|
|
https://www.linuxfromscratch.org/~ken/tex-testfiles/latex-test-20220322.tar.xz
|
|
but the more interesting stuff (WebM html, svg, png, pdf) is tested in
|
|
https://www.linuxfromscratch.org/~ken/asy-nontex-testfiles/asy-test-20200809.tar.xz
|
|
-->
|
|
<!--<para>
|
|
First apply a patch to fix runtime issues on some machines:
|
|
</para>
|
|
|
|
<screen><userinput>patch -Np1 -i ../asymptote-&asymptote-version;-upstream_fixes-1.patch</userinput></screen>-->
|
|
|
|
<para>
|
|
Install <application>asymptote</application> by running the following
|
|
commands:
|
|
</para>
|
|
|
|
<screen><userinput>export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &&
|
|
|
|
./configure --prefix=$TEXLIVE_PREFIX \
|
|
--bindir=$TEXLIVE_PREFIX/bin/$TEXARCH \
|
|
--datarootdir=$TEXLIVE_PREFIX/texmf-dist \
|
|
--infodir=$TEXLIVE_PREFIX/texmf-dist/doc/info \
|
|
--libdir=$TEXLIVE_PREFIX/texmf-dist \
|
|
--mandir=$TEXLIVE_PREFIX/texmf-dist/doc/man \
|
|
--disable-lsp \
|
|
--enable-gc=system \
|
|
--with-latex=$TEXLIVE_PREFIX/texmf-dist/tex/latex \
|
|
--with-context=$TEXLIVE_PREFIX/texmf-dist/tex/context/third &&
|
|
|
|
make</userinput></screen>
|
|
|
|
<para>
|
|
To test the results, issue: <command>make check</command>.
|
|
</para>
|
|
|
|
<para>
|
|
Now, as the <systemitem class="username">root</systemitem> user:
|
|
</para>
|
|
|
|
<screen role="root"><userinput>make install</userinput></screen>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="commands">
|
|
<title>Command Explanations</title>
|
|
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/tex-prefix.xml"/>
|
|
|
|
<para>
|
|
<parameter>--libdir=$TEXLIVE_PREFIX/texmf-dist;</parameter>:
|
|
This parameter ensures that the <filename
|
|
class="directory">asymptote</filename> directory will similarly
|
|
overwrite any files installed by install-tl-unx.
|
|
</para>
|
|
|
|
<para>
|
|
<parameter>--disable-lsp</parameter>: The Language Server Protocol is
|
|
enabled by default, with several third-party sources included, but it
|
|
does not build unless boost and repidjson have been installed.
|
|
</para>
|
|
|
|
<para>
|
|
<parameter>--enable-gc=system</parameter>: this ensures that the system
|
|
version of <filename class="libraryfile">libgc.so</filename> will be used
|
|
instead of the version shipped with this package.
|
|
</para>
|
|
|
|
<para>
|
|
<parameter>--with-latex= ... --with-context=</parameter>: These switches
|
|
ensure that style files and a tex file will be installed into the
|
|
<application>texlive</application> directories instead of creating a
|
|
<filename class="directory">texmf-local</filename> directory for them.
|
|
</para>
|
|
|
|
<!-- commenting for now: 2.44 installs asymptote.info in both places
|
|
so the old version no longer remains
|
|
|
|
<para>
|
|
<command>rm -fv /opt/texlive/.../asymptote.info</command>:
|
|
This deletes the file installed by <application>texlive</application>.
|
|
Exceptionally, asymptote will create an <filename
|
|
class="directory">asymptote/</filename> subdirectory for its own
|
|
<filename>asymptote.info</filename> even though a possibly older
|
|
version from <xref linkend="texlive"/> is in the main
|
|
<application>texlive</application>
|
|
<filename class="directory">info/</filename> directory. Both the
|
|
new version and the existing <filename>asy-faq.info</filename>
|
|
<emphasis>will</emphasis> be found by <command>info</command>.
|
|
</para>-->
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="content">
|
|
<title>Contents</title>
|
|
|
|
<segmentedlist>
|
|
<segtitle>Installed Programs</segtitle>
|
|
<segtitle>Installed Libraries</segtitle>
|
|
<segtitle>Installed Directory</segtitle>
|
|
|
|
<seglistitem>
|
|
<seg>
|
|
asy, xasy
|
|
</seg>
|
|
<seg>
|
|
None
|
|
</seg>
|
|
<seg>
|
|
$TEXLIVE_PREFIX/texmf-dist/asymptote,
|
|
$TEXLIVE_PREFIX/doc/asymptote,
|
|
$TEXLIVE_PREFIX/info/asymptote
|
|
</seg>
|
|
</seglistitem>
|
|
</segmentedlist>
|
|
|
|
<variablelist>
|
|
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
|
<?dbfo list-presentation="list"?>
|
|
<?dbhtml list-presentation="table"?>
|
|
|
|
<varlistentry id="asy">
|
|
<term><command>asy</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a vector graphics program
|
|
</para>
|
|
<indexterm zone="asymptote asy">
|
|
<primary sortas="b-asy">asy</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="xasy">
|
|
<term><command>xasy</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a Python3 script providing a Qt5 GUI for asy
|
|
</para>
|
|
<indexterm zone="asymptote xasy">
|
|
<primary sortas="b-xasy">xasy</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|