123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672 |
- # This file contains pieces from chapter/installation.texi for systems where the LTS or otherwise support
- # ended. They can be useful for people trying to write new installation instructions for those systems.
- # In particual this covers:
- # - FreeBSD 8
- # - Mac OS X Tiger
- # - Fedora 8
- # - Gentoo with GNUnet 0.9
- #
- # Sources for LTS and support ranges:
- # https://www.freebsd.org/security/security.html#sup
- # https://support.microsoft.com/en-us/help/17140/lifecycle-faq-general-policy-questions
- # Mac products, OS is supposedly similar (no official statements exist): https://web.archive.org/web/20160706101225/https://support.apple.com/en-us/HT201624
- # https://wiki.debian.org/LTS
- # https://www.ubuntu.com/info/release-end-of-life
- @node Build instructions for Gentoo
- @subsection Build instructions for Gentoo
- This page describes how to install GNUnet 0.9 on Gentoo.
- Since the GNUnet 0.9 ebuilds are not in the official portage tree yet, we need
- to add them to the local portage overlay. All the commands below should be
- executed as root.
- Specify your local portage directory in the /etc/make.conf, for example:@
- @code{$ echo 'PORTDIR_OVERLAY="/usr/local/portage"' >> /etc/make.conf}
- Create directories for the ebuilds:@
- @code{$ mkdir -p /usr/local/portage/media-libs/libextractor /usr/local/portage/net-p2p/gnunet/files}
- Download the latest ebuilds, init and config files from here and put them into
- respective directories:@
- @code{$ cp libextractor-0.6.2.ebuild /usr/local/portage/media-libs/libextractor@
- $ cp gnunet-0.9.2.ebuild /usr/local/portage/net-p2p/gnunet@
- $ cp gnunet-0.9.2.conf gnunet-0.9.2.confd gnunet-0.9.2.initd /usr/local/portage/net-p2p/gnunet/files}
- Generate Manifest files for the ebuilds:@
- @code{$ cd /usr/local/portage/net-p2p/gnunet@
- $ ebuild gnunet-0.9.2.ebuild digest@
- $ cd /usr/local/portage/media-libs/libextractor@
- $ ebuild libextractor-0.6.2.ebuild digest}
- Unmask GNUnet and dependencies in the /etc/portage/package.keywords. For
- example, if you use x86-64 architecture, add the following lines:@
- @code{net-p2p/gnunet ~amd64@
- media-libs/libextractor ~amd64@
- net-libs/libmicrohttpd ~amd64@
- net-misc/curl ~amd64}
- Add either sqlite or mysql USE-flag in the /etc/portage/package.use:@
- @code{net-p2p/gnunet sqlite}
- Now everything is ready to install GNUnet:@
- @code{$ emerge -av gnunet}
- Use /etc/init.d/gnunet to start/stop GNUnet.
- @node Basic Installation for Fedora/PlanetLab nodes running Fedora 8 .
- @subsection Basic Installation for Fedora/PlanetLab nodes running Fedora 8 .
- @c %**end of header
- @strong{This documentation is outdated and not valid for GNUnet 0.10.0!}@
- GNUnet installation on Fedora 8/Planetlab nodes can be done as following:
- 1. Install the build tools to build GNUnet@
- @example
- sudo yum -y -t --nogpgcheck install gcc make automake autoconf gettext-devel \
- texinfo zlib-devel subversion@
- @end example
- 2. Install the GNUnet dependencies@
- @example
- sudo yum -y -t --nogpgcheck install gnutls-devel gnutls-devel libgcrypt-devel \
- sqlite-devel postgresql-devel mysql-devel libgsf-devel libvorbis-devel \
- libidn-devel
- @end example
- 3. Install outdated dependencies from source@
- libtool@
- @code{@
- wget http://ftp.gnu.org/gnu/libtool/libtool-2.4.2.tar.gz@
- tar xvfz libtool-2.4.2.tar.gz@
- cd libtool-2.4.2@
- ./configure@
- sudo make install@
- }
- libtool@
- @code{@
- wget http://ftp.gnu.org/gnu/libtool/libtool-2.4.2.tar.gz@
- tar xvfz libtool-2.4.2.tar.gz@
- cd libtool-2.4.2@
- ./configure@
- sudo make install@
- }
- glpk@
- @code{@
- wget http://ftp.gnu.org/gnu/glpk/glpk-4.47.tar.gz@
- tar xvfz glpk-4.47.tar.gz@
- cd glpk-4.47@
- ./configure@
- sudo make install@
- }
- libgpg-error@
- @code{@
- wget ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-1.10.tar.bz2@
- tar xvfj libgpg-error-1.10.tar.bz2@
- cd libgpg-error-1.10@
- ./configure --prefix=/usr@
- sudo make install@
- }
- libgcrypt@
- @code{@
- wget ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-1.5.0.tar.bz2@
- tar xvfj libgcrypt-1.5.0.tar.tar.bz2@
- cd libgcrypt-1.5.0@
- ./configure --prefix=/usr@
- sudo make install@
- }
- libcurl@
- @code{@
- wget http://curl.haxx.se/download/curl-7.26.0.tar.gz@
- tar xvfz curl-7.26.0.tar.gz@
- cd curl-7.26.0@
- ./configure@
- sudo make install@
- }
- libunistring@
- @code{@
- wget http://ftp.gnu.org/gnu/libunistring/libunistring-0.9.3.tar.gz@
- tar xvfz libunistring-0.9.3.tar.gz@
- cd libunistring-0.9.3@
- ./configure@
- sudo make install@
- }
- 4. Remove conflicting packages@
- @code{@
- sudo rpm -e --nodeps libgcrypt libgpg-error@
- }
- 4. Install libextractor@
- @code{@
- wget ftp://ftp.gnu.org/gnu/libextractor/libextractor-0.6.3.tar.gz@
- tar xvfz libextractor-0.6.3.tar.gz@
- cd libextractor-0.6.3@
- ./configure@
- sudo make install@
- }
- 5. Install libmicrohttpd and dependencies
- nettle@
- @code{@
- wget http://ftp.gnu.org/gnu/nettle/nettle-2.5.tar.gz@
- tar xvfz nettle-2.5.tar.gz@
- cd nettle-2.5@
- ./configure@
- sudo make install@
- }
- GnuTLS@
- @code{@
- wget http://ftp.gnu.org/gnu/gnutls/gnutls-2.12.20.tar.bz2@
- tar xvfj gnutls-2.12.20.tar.bz2@
- cd gnutls-2.12.20@
- ./configure --without-p11-kit@
- sudo make install@
- }
- libmicrohttpd@
- @code{@
- wget ftp://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.21.tar.gz@
- tar xvfz libmicrohttpd-0.9.21.tar.gz@
- cd libmicrohttpd-0.9.21@
- ./configure@
- sudo make install@
- }
- 6. Set GNUnet prefix and add to PATH@
- @code{@
- export GNUNET_PREFIX=@
- export PATH=$PATH:$GNUNET_PREFIX/bin@
- }
- 7. Install GNUnet from svn@
- @example
- export LD_LIBRARY_PATH=/usr/local/lib@
- svn co https://gnunet.org/svn/gnunet@
- cd gnunet@
- libtoolize@
- ./bootstrap@
- ./configure --prefix=$GNUNET_PREFIX --with-extractor=/usr/local \
- --with-curl=/usr/local --with-mysql=/usr/lib/mysql --enable-logging=verbose@
- make install@
- @end example
- Done!
- @node Build instructions for FreeBSD 8
- @subsection Build instructions for FreeBSD 8
- To get GNUnet 0.9 to compile on FreeBSD (at least FreeBSD 8.0):@ in order to
- install the library @code{libiconv}, at first change the directory to your
- ports directory, e.g.@
- @code{@
- $ cd /usr/ports/@
- }@
- following that, go to the install file of @code{libiconv} and install it,@
- @code{@
- $ cd converters/libiconv,@
- $ make install@
- }
- after that, change the directory to where you will check out
- @code{libextractor} and GNUnet, and install latest @code{libextractor},@
- first of all, checkout @code{libextractor}, e.g.@
- @code{@
- $ svn co https://gnunet.org/svn/Extractor@
- }@
- then change the directory into which it was checked out, e.g.@
- @code{@
- $ cd Extractor@
- }@
- before the installation, you should do following steps,@
- @example
- $ ./bootstrap@
- $ ./configure --with-ltdl-include=/usr/local/include \
- --with-ltdl-lib=/usr/local/lib@
- @end example
- if these steps complete successfully, you can install the library,@
- @example
- $ make install@
- @end example
- to check out the GNUnet, you should do the similar steps as
- @code{libextractor}, firstly, change back to starting directory, e.g.@
- @code{@
- $ cd ../@
- }@
- Set the following environmental variables:@
- @code{@
- export CPPFLAGS="-I/usr/local/include"@
- export LDFLAGS="-L/usr/local/lib"@
- }@
- next, checkout GNUnet using@
- @code{@
- $ svn co https://gnunet.org/svn/gnunet@
- }@
- then change directory into newly checked out directory,@
- @code{@
- $ cd gnunet@
- }@
- at last, start to install GNUnet,@
- @example
- $ ./bootstrap@
- $ ./configure --with-ltdl-include=/usr/local/include \
- --with-ltdl-lib=/usr/local/lib --with-extractor=/usr/local
- ## NOTE: you may not need the --with-extractor option!@
- $ make install
- @end example
- @node Basic installation for Mac OS X
- @subsection Basic installation for Mac OS X
- This documentation may be outdated!
- This page is providing guidelines for users trying to install GNUnet on Mac OS
- X.@ Mainly users trying to install GNUnet by building source code are the most
- welcome readers.@ The steps below are tested on an Intel Architecture running
- Mac OS X Tiger (10.4.11). Ideally they should work on other Mac boxes with
- different configurations as all the configuration done for it is dependent on
- @uref{http://www.macports.org/, MacPorts}
- For having GNUnet installed successfully, some dependencies should be firstly
- resolved:
- @itemize @bullet
- @item
- Install/Update your @uref{http://developer.apple.com/tools/xcode/, Xcode}
- version 3.2.1 or later for Snow Leopard, 3.1.4 or later for Leopard, or 2.5 for
- Tiger.
- @item
- Download and install @uref{http://www.macports.org/, MacPorts}.@
- Now you are ready for installing GNunet dependencies.
- @item
- First, you'd better make sure that: /opt/local/bin and /opt/local/sbin are
- available in your PATH. (For doing so, open a terminal and type:@
- @example
- $ echo $PATH
- @end example
- and examine the output of it). If the paths are not available in your
- environment, you have to add them (You can add them by editing your .profile
- file in your home directory, append them to the PATH line). Then type:
- @example
- $ source ~/.profile
- @end example
- and re-examine the echo command output.
- @item
- Use MacPorts to download and install the dependencies:@
- The libraries are:
- @itemize @bullet
- @item
- @uref{http://trac.macports.org/browser/trunk/dports/www/libmicrohttpd/Portfile, libmicrohttpd.}
- @item
- @uref{http://trac.macports.org/browser/trunk/dports/devel/libgcrypt/Portfile, libgcrypt.}
- @item
- @uref{http://trac.macports.org/browser/trunk/dports/net/curl/Portfile, libcurl.}
- @item
- @uref{http://trac.macports.org/browser/trunk/dports/devel/libtool/Portfile, libltdl.}
- @item
- @uref{http://trac.macports.org/browser/trunk/dports/databases/sqlite3/Portfile, SQlite.}
- @item
- libunistring
- @item
- glpk
- @end itemize
- The port command is as follows:@
- @example
- port install libmicrohttpd libgcrypt curl libtool sqlite3 linunistring glpk
- @end example
- One of the dependencies, the libextractor, should be explicitly installed,
- since the version available from macports is outdated to work with GNUnet. To
- install the latest libextractor:
- @itemize @bullet
- @item
- Install the Subversion Client:@
- For more information about Subversion visit:
- @uref{http://subversion.tigris.org/, http://subversion.tigris.org/}
- @example
- # port install subversion
- @end example
- @item
- Use Subversion to download the latest Extractor:
- @example
- $ svn checkout https://gnunet.org/svn/Extractor
- @end example
- @item
- Go to the installation directory of the Extractor, compile and install it:
- @example
- $ ./bootstrap
- $ export CPPFLAGS="-I/opt/local/include"
- $ export LDFLAGS="-L/opt/local/lib"
- $ ./configure --prefix=/opt/local
- $ make
- # make install
- @end example
- @end itemize
- @item
- Now, your system is ready to install GNunet. If you downloaded GNUnet by
- checking it out from svn, you should start by running the bootstrap script.
- Open a terminal pointing to the GNUnet directory and type:@
- @example
- $ ./bootstrap
- @end example
- @item
- Run the configure script:
- @example
- $ export CPPFLAGS="-I/opt/local/include"
- $ export LDFLAGS="-L/opt/local/lib"
- $ ./configure --prefix=/tmp/gnunet_build
- @end example
- GNUnet will be installed in the directory /tmp/gnunet_build (Of course that
- installation path can be changed).@ The CPPFLAGS and LDFLAGS are mentioned in
- order to inform the compiler and the linker to lookup headers and libraries in
- /opt/local/include and /opt/local/lib.
- @item
- Compile@
- @example
- $ make
- @end example
- @item
- Install GNUnet
- @example
- # make install
- @end example
- @end itemize
- @node Basic Installation for Fedora/PlanetLab nodes running Fedora 12
- @subsection Basic Installation for Fedora/PlanetLab nodes running Fedora 12
- @strong{This documentation is outdated and not valid for GNUnet 0.10.0!}@
- GNUnet installation on Fedora 8/Planetlab nodes can be done as following:
- 1. Install the build tools to build GNUnet@
- @example
- sudo yum -y -t --nogpgcheck install gcc make autoconf gettext-devel \
- texinfo subversion@
- @end example
- 2. Install the GNUnet dependencies@
- @example
- sudo yum -y -t --nogpgcheck install libunistring-devel libunistring-devel \
- libgcrypt-devel zlib-devel sqlite-devel postgresql-devel mysql-devel \
- libgsf-devel libvorbis-devel@
- @end example
- 3. Install outdated dependencies from source@
- libtool@
- @example
- wget http://ftp.gnu.org/gnu/libtool/libtool-2.4.2.tar.gz@
- tar xvfz libtool-2.4.2.tar.gz@
- cd libtool-2.4.2@
- ./configure@
- sudo make install@
- @end example
- glpk@
- @example
- wget http://ftp.gnu.org/gnu/glpk/glpk-4.47.tar.gz@
- tar xvfz glpk-4.47.tar.gz@
- cd glpk-4.47@
- ./configure@
- sudo make install@
- @end example
- libcurl@
- @example
- wget http://curl.haxx.se/download/curl-7.26.0.tar.gz@
- tar xvfz curl-7.26.0.tar.gz@
- cd curl-7.26.0@
- ./configure@
- sudo make install@
- @end example
- 4. Install libextractor@
- @example
- svn co https://gnunet.org/svn/libextractor@
- cd libextractor@
- libtoolize@
- ./bootstrap@
- ./configure@
- sudo make install@
- @end example
- 5. Install libmicrohttpd@
- @example
- svn co https://gnunet.org/svn/libmicrohttpd@
- cd libmicrohttpd@
- libtoolize@
- ./bootstrap@
- ./configure@
- sudo make install@
- @end example
- 6. Set GNUnet prefix and add to PATH@
- @example
- export GNUNET_PREFIX=@
- export PATH=$PATH:$GNUNET_PREFIX/bin@
- @end example
- 7. Install GNUnet from svn@
- @example
- export LD_LIBRARY_PATH=/usr/local/lib@
- svn co https://gnunet.org/svn/gnunet@
- cd gnunet@
- libtoolize@
- ./bootstrap@
- ./configure --prefix=$GNUNET_PREFIX --with-extractor=/usr \
- --with-mysql=/usr/lib/mysql --enable-logging=verbose@
- make install@
- @end example
- Done!
- @node Basic Installation for Fedora/PlanetLab nodes running Fedora 8 .
- @subsection Basic Installation for Fedora/PlanetLab nodes running Fedora 8 .
- @c %**end of header
- @strong{This documentation is outdated and not valid for GNUnet 0.10.0!}@
- GNUnet installation on Fedora 8/Planetlab nodes can be done as following:
- 1. Install the build tools to build GNUnet@
- @example
- sudo yum -y -t --nogpgcheck install gcc make automake autoconf gettext-devel \
- texinfo zlib-devel subversion@
- @end example
- 2. Install the GNUnet dependencies@
- @example
- sudo yum -y -t --nogpgcheck install gnutls-devel gnutls-devel libgcrypt-devel \
- sqlite-devel postgresql-devel mysql-devel libgsf-devel libvorbis-devel \
- libidn-devel
- @end example
- 3. Install outdated dependencies from source@
- libtool@
- @code{@
- wget http://ftp.gnu.org/gnu/libtool/libtool-2.4.2.tar.gz@
- tar xvfz libtool-2.4.2.tar.gz@
- cd libtool-2.4.2@
- ./configure@
- sudo make install@
- }
- libtool@
- @code{@
- wget http://ftp.gnu.org/gnu/libtool/libtool-2.4.2.tar.gz@
- tar xvfz libtool-2.4.2.tar.gz@
- cd libtool-2.4.2@
- ./configure@
- sudo make install@
- }
- glpk@
- @code{@
- wget http://ftp.gnu.org/gnu/glpk/glpk-4.47.tar.gz@
- tar xvfz glpk-4.47.tar.gz@
- cd glpk-4.47@
- ./configure@
- sudo make install@
- }
- libgpg-error@
- @code{@
- wget ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-1.10.tar.bz2@
- tar xvfj libgpg-error-1.10.tar.bz2@
- cd libgpg-error-1.10@
- ./configure --prefix=/usr@
- sudo make install@
- }
- libgcrypt@
- @code{@
- wget ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-1.5.0.tar.bz2@
- tar xvfj libgcrypt-1.5.0.tar.tar.bz2@
- cd libgcrypt-1.5.0@
- ./configure --prefix=/usr@
- sudo make install@
- }
- libcurl@
- @code{@
- wget http://curl.haxx.se/download/curl-7.26.0.tar.gz@
- tar xvfz curl-7.26.0.tar.gz@
- cd curl-7.26.0@
- ./configure@
- sudo make install@
- }
- libunistring@
- @code{@
- wget http://ftp.gnu.org/gnu/libunistring/libunistring-0.9.3.tar.gz@
- tar xvfz libunistring-0.9.3.tar.gz@
- cd libunistring-0.9.3@
- ./configure@
- sudo make install@
- }
- 4. Remove conflicting packages@
- @code{@
- sudo rpm -e --nodeps libgcrypt libgpg-error@
- }
- 4. Install libextractor@
- @code{@
- wget ftp://ftp.gnu.org/gnu/libextractor/libextractor-0.6.3.tar.gz@
- tar xvfz libextractor-0.6.3.tar.gz@
- cd libextractor-0.6.3@
- ./configure@
- sudo make install@
- }
- 5. Install libmicrohttpd and dependencies
- nettle@
- @code{@
- wget http://ftp.gnu.org/gnu/nettle/nettle-2.5.tar.gz@
- tar xvfz nettle-2.5.tar.gz@
- cd nettle-2.5@
- ./configure@
- sudo make install@
- }
- GnuTLS@
- @code{@
- wget http://ftp.gnu.org/gnu/gnutls/gnutls-2.12.20.tar.bz2@
- tar xvfj gnutls-2.12.20.tar.bz2@
- cd gnutls-2.12.20@
- ./configure --without-p11-kit@
- sudo make install@
- }
- libmicrohttpd@
- @code{@
- wget ftp://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.21.tar.gz@
- tar xvfz libmicrohttpd-0.9.21.tar.gz@
- cd libmicrohttpd-0.9.21@
- ./configure@
- sudo make install@
- }
- 6. Set GNUnet prefix and add to PATH@
- @code{@
- export GNUNET_PREFIX=@
- export PATH=$PATH:$GNUNET_PREFIX/bin@
- }
- 7. Install GNUnet from svn@
- @example
- export LD_LIBRARY_PATH=/usr/local/lib@
- svn co https://gnunet.org/svn/gnunet@
- cd gnunet@
- libtoolize@
- ./bootstrap@
- ./configure --prefix=$GNUNET_PREFIX --with-extractor=/usr/local \
- --with-curl=/usr/local --with-mysql=/usr/lib/mysql --enable-logging=verbose@
- make install@
- @end example
- Done!
|