mirror of
https://github.com/privatevoid-net/nix-super.git
synced 2024-11-10 08:16:15 +02:00
81 lines
3.5 KiB
XML
81 lines
3.5 KiB
XML
<section xmlns="http://docbook.org/ns/docbook"
|
||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||
version="5.0"
|
||
xml:id="sec-prerequisites-source">
|
||
|
||
<title>Prerequisites</title>
|
||
|
||
<itemizedlist>
|
||
|
||
<listitem><para>GNU Make.</para></listitem>
|
||
|
||
<listitem><para>Bash Shell. The <literal>./configure</literal> script
|
||
relies on bashisms, so Bash is required.</para></listitem>
|
||
|
||
<listitem><para>A version of GCC or Clang that supports C++14.</para></listitem>
|
||
|
||
<listitem><para><command>pkg-config</command> to locate
|
||
dependencies. If your distribution does not provide it, you can get
|
||
it from <link
|
||
xlink:href="http://www.freedesktop.org/wiki/Software/pkg-config"
|
||
/>.</para></listitem>
|
||
|
||
<listitem><para>The OpenSSL library to calculate cryptographic hashes.
|
||
If your distribution does not provide it, you can get it from <link
|
||
xlink:href="https://www.openssl.org"/>.</para></listitem>
|
||
|
||
<listitem><para>The bzip2 compressor program and the
|
||
<literal>libbz2</literal> library. Thus you must have bzip2
|
||
installed, including development headers and libraries. If your
|
||
distribution does not provide these, you can obtain bzip2 from <link
|
||
xlink:href="http://www.bzip.org/"/>.</para></listitem>
|
||
|
||
<listitem><para><literal>liblzma</literal>, which is provided by
|
||
XZ Utils. If your distribution does not provide this, you can
|
||
get it from <link xlink:href="https://tukaani.org/xz/"/>.</para></listitem>
|
||
|
||
<listitem><para>cURL and its library. If your distribution does not
|
||
provide it, you can get it from <link
|
||
xlink:href="https://curl.haxx.se/"/>.</para></listitem>
|
||
|
||
<listitem><para>The SQLite embedded database library, version 3.6.19
|
||
or higher. If your distribution does not provide it, please install
|
||
it from <link xlink:href="http://www.sqlite.org/" />.</para></listitem>
|
||
|
||
<listitem><para>The <link
|
||
xlink:href="http://www.hboehm.info/gc/">Boehm
|
||
garbage collector</link> to reduce the evaluator’s memory
|
||
consumption (optional). To enable it, install
|
||
<literal>pkgconfig</literal> and the Boehm garbage collector, and
|
||
pass the flag <option>--enable-gc</option> to
|
||
<command>configure</command>.</para></listitem>
|
||
|
||
<listitem><para>The <command>xmllint</command> and
|
||
<command>xsltproc</command> programs to build this manual and the
|
||
man-pages. These are part of the <literal>libxml2</literal> and
|
||
<literal>libxslt</literal> packages, respectively. You also need
|
||
the <link
|
||
xlink:href="http://docbook.sourceforge.net/projects/xsl/">DocBook
|
||
XSL stylesheets</link> and optionally the <link
|
||
xlink:href="http://www.docbook.org/schemas/5x"> DocBook 5.0 RELAX NG
|
||
schemas</link>. Note that these are only required if you modify the
|
||
manual sources or when you are building from the Git
|
||
repository.</para></listitem>
|
||
|
||
<listitem><para>Recent versions of Bison and Flex to build the
|
||
parser. (This is because Nix needs GLR support in Bison and
|
||
reentrancy support in Flex.) For Bison, you need version 2.6, which
|
||
can be obtained from the <link
|
||
xlink:href="ftp://alpha.gnu.org/pub/gnu/bison">GNU FTP
|
||
server</link>. For Flex, you need version 2.5.35, which is
|
||
available on <link
|
||
xlink:href="http://lex.sourceforge.net/">SourceForge</link>.
|
||
Slightly older versions may also work, but ancient versions like the
|
||
ubiquitous 2.5.4a won't. Note that these are only required if you
|
||
modify the parser or when you are building from the Git
|
||
repository.</para></listitem>
|
||
|
||
</itemizedlist>
|
||
|
||
</section>
|