Commit 5a5a64c6 authored by Petr Pudlak's avatar Petr Pudlak

Update the list dependencies in INSTALL

In particular, move luxid's dependencies to the section with mandatory
dependencies.
Signed-off-by: default avatarPetr Pudlak <pudlak@google.com>
Reviewed-by: default avatarHelga Velroyen <helgav@google.com>
parent 636e66d1
...@@ -144,18 +144,33 @@ deploy Ganeti on production machines). More specifically: ...@@ -144,18 +144,33 @@ deploy Ganeti on production machines). More specifically:
- `bytestring <http://hackage.haskell.org/package/bytestring>`_ and - `bytestring <http://hackage.haskell.org/package/bytestring>`_ and
`utf8-string <http://hackage.haskell.org/package/utf8-string>`_ `utf8-string <http://hackage.haskell.org/package/utf8-string>`_
libraries; these usually come with the GHC compiler libraries; these usually come with the GHC compiler
- `text <http://hackage.haskell.org/package/text>`_
- `deepseq <http://hackage.haskell.org/package/deepseq>`_ - `deepseq <http://hackage.haskell.org/package/deepseq>`_
- `curl <http://hackage.haskell.org/package/curl>`_, tested with - `curl <http://hackage.haskell.org/package/curl>`_, tested with
versions 1.3.4 and above versions 1.3.4 and above
- `hslogger <http://software.complete.org/hslogger>`_, version 1.1 and - `hslogger <http://software.complete.org/hslogger>`_, version 1.1 and
above (note that Debian Squeeze only has version 1.0.9) above (note that Debian Squeeze only has version 1.0.9)
- `hinotify <http://hackage.haskell.org/package/hinotify>`_, tested with
version 0.3.2
- `Crypto <http://hackage.haskell.org/package/Crypto>`_, tested with
version 4.2.4
- `regex-pcre <http://hackage.haskell.org/package/regex-pcre>`_,
bindings for the ``pcre`` library
- `attoparsec <http://hackage.haskell.org/package/attoparsec>`_
- `vector <http://hackage.haskell.org/package/vector>`_
- `process <http://hackage.haskell.org/package/process>`_, version 1.0.1.1 and
above
Some of these are also available as package in Debian/Ubuntu:: Some of these are also available as package in Debian/Ubuntu::
$ apt-get install ghc libghc-json-dev libghc-network-dev \ $ apt-get install ghc libghc-json-dev libghc-network-dev \
libghc-parallel-dev libghc-deepseq-dev \ libghc-parallel-dev libghc-deepseq-dev \
libghc-utf8-string-dev libghc-curl-dev \ libghc-utf8-string-dev libghc-curl-dev \
libghc-hslogger-dev libghc-hslogger-dev \
libghc-crypto-dev libghc-text-dev \
libghc-hinotify-dev libghc-regex-pcre-dev \
libpcre3-dev \
libghc-attoparsec-dev libghc-vector-dev
Or in older versions of these distributions (using GHC 6.x):: Or in older versions of these distributions (using GHC 6.x)::
...@@ -166,57 +181,51 @@ Or in older versions of these distributions (using GHC 6.x):: ...@@ -166,57 +181,51 @@ Or in older versions of these distributions (using GHC 6.x)::
In Fedora, some of them are available via packages as well:: In Fedora, some of them are available via packages as well::
$ yum install ghc ghc-json-devel ghc-network-devel \ $ yum install ghc ghc-json-devel ghc-network-devel \
ghc-parallel-devel ghc-deepseq-devel ghc-parallel-devel ghc-deepseq-devel \
ghc-hslogger-devel ghc-text-devel \
ghc-regex-pcre-devel
If using a distribution which does not provide them, first install The most recent Fedora doesn't provide ``crypto``, ``inotify``. So these
the Haskell platform. You can also install ``cabal`` manually:: need to be installed using ``cabal``.
If using a distribution which does not provide these libraries, first
install the Haskell platform. You can also install ``cabal`` manually::
$ apt-get install cabal-install $ apt-get install cabal-install
$ cabal update $ cabal update
Then install the additional libraries (only the ones not available in your Then install the additional native libraries::
distribution packages) via ``cabal``::
$ apt-get install libpcre3-dev libcurl4-openssl-dev
And finally the libraries required for building the packages (only the
ones not available in your distribution packages) via ``cabal``::
$ cabal install json network parallel utf8-string curl hslogger $ cabal install json network parallel utf8-string curl hslogger \
Crypto text hinotify==0.3.2 regex-pcre \
attoparsec vector
Haskell optional features Haskell optional features
~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~
Optionally, more functionality can be enabled if your build machine has Optionally, more functionality can be enabled if your build machine has
a few more Haskell libraries enabled: the ``ganeti-confd`` and a few more Haskell libraries enabled: the ``ganeti-confd`` daemon
``ganeti-luxid`` daemon (``--enable-confd``) and the monitoring daemon (``--enable-confd``) and the monitoring daemon (``--enable-mond``).
(``--enable-mond``). The list of extra dependencies for these is: The extra dependency for these is:
- `Crypto <http://hackage.haskell.org/package/Crypto>`_, tested with
version 4.2.4
- `text <http://hackage.haskell.org/package/text>`_
- `hinotify <http://hackage.haskell.org/package/hinotify>`_, tested with
version 0.3.2
- `regex-pcre <http://hackage.haskell.org/package/regex-pcre>`_,
bindings for the ``pcre`` library
- `attoparsec <http://hackage.haskell.org/package/attoparsec>`_
- `vector <http://hackage.haskell.org/package/vector>`_
- `snap-server` <http://hackage.haskell.org/package/snap-server>`_, version - `snap-server` <http://hackage.haskell.org/package/snap-server>`_, version
0.8.1 and above. 0.8.1 and above.
- `process <http://hackage.haskell.org/package/process>`_, version 1.0.1.1 and
above
These libraries are available in Debian Wheezy (but not in Squeeze), so you This library is available in Debian Wheezy (but not in Squeeze), so you
can use either apt:: can use either apt::
$ apt-get install libghc-crypto-dev libghc-text-dev \ $ apt-get install libghc-snap-server-dev
libghc-hinotify-dev libghc-regex-pcre-dev \
libpcre3-dev \
libghc-attoparsec-dev libghc-vector-dev \
libghc-snap-server-dev
or ``cabal``, after installing a required non-Haskell dependency:: or ``cabal``::
$ apt-get install libpcre3-dev libcurl4-openssl-dev $ cabal install snap-server
$ cabal install Crypto text hinotify==0.3.2 regex-pcre \
attoparsec vector snap-server
to install them. to install it.
In case you still use ghc-6.12, note that ``cabal`` would automatically try to In case you still use ghc-6.12, note that ``cabal`` would automatically try to
install newer versions of some of the libraries snap-server depends on, that install newer versions of some of the libraries snap-server depends on, that
...@@ -227,13 +236,6 @@ own, explicitly forcing the installation of compatible versions:: ...@@ -227,13 +236,6 @@ own, explicitly forcing the installation of compatible versions::
hashable==1.1.2.0 case-insensitive==0.3 parsec==3.0.1 \ hashable==1.1.2.0 case-insensitive==0.3 parsec==3.0.1 \
network==2.3 snap-server==0.8.1 network==2.3 snap-server==0.8.1
The most recent Fedora doesn't provide ``crypto``, ``inotify``. So these
need to be installed using ``cabal``, if desired. The other packages can
be installed via ``yum``::
$ yum install ghc-hslogger-devel ghc-text-devel \
ghc-regex-pcre-devel
.. _cabal-note: .. _cabal-note:
.. note:: .. note::
If one of the cabal packages fails to install due to unfulfilled If one of the cabal packages fails to install due to unfulfilled
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment