aboutsummaryrefslogtreecommitdiff
path: root/doc/chapters
diff options
context:
space:
mode:
authorng0 <ng0@infotropique.org>2017-10-20 16:57:29 +0000
committerng0 <ng0@infotropique.org>2017-10-20 16:57:29 +0000
commit7a0a978c78054fbf4d26a96aa091d576267b07cb (patch)
tree2a73220323e60be5b919d2decee1510d8c114916 /doc/chapters
parent9b9a2c8b892d62d62d0995a5a792f83e6c67c186 (diff)
downloadgnunet-7a0a978c78054fbf4d26a96aa091d576267b07cb.tar.gz
gnunet-7a0a978c78054fbf4d26a96aa091d576267b07cb.zip
fixes in installation.texi + some changes in gnunet-c-tutorial
Diffstat (limited to 'doc/chapters')
-rw-r--r--doc/chapters/installation.texi105
1 files changed, 73 insertions, 32 deletions
diff --git a/doc/chapters/installation.texi b/doc/chapters/installation.texi
index 1fbe20892..60861402a 100644
--- a/doc/chapters/installation.texi
+++ b/doc/chapters/installation.texi
@@ -1,13 +1,13 @@
1@node GNUnet Installation Handbook 1@node GNUnet Installation Handbook
2@chapter GNUnet Installation Handbook 2@chapter GNUnet Installation Handbook
3 3
4This handbook describes how to install (build setup, compilation) and setup 4This handbook describes how to install (build setup, compilation) and
5(configuration, start) GNUnet 0.10.x. After following these instructions you 5setup (configuration, start) GNUnet 0.10.x. After following these
6should be able to install and then start user-interfaces to interact with the 6instructions you should be able to install and then start user-interfaces
7network. 7to interact with the network.
8 8
9This manual is far from complete, and we welcome informed contributions, be it 9This manual is far from complete, and we welcome informed contributions,
10in the form of new chapters or insightful comments. 10be it in the form of new chapters or insightful comments.
11 11
12 12
13 13
@@ -30,7 +30,8 @@ in the form of new chapters or insightful comments.
30@section Dependencies 30@section Dependencies
31@c %**end of header 31@c %**end of header
32 32
33This document lists the various known dependencies for GNUnet 0.10.x. 33This section lists the various known dependencies for
34GNUnet @value{EDITION}.
34Suggestions for missing dependencies or wrong version numbers are welcome. 35Suggestions for missing dependencies or wrong version numbers are welcome.
35 36
36 37
@@ -38,6 +39,7 @@ Suggestions for missing dependencies or wrong version numbers are welcome.
38@menu 39@menu
39* External dependencies:: 40* External dependencies::
40* Fixing libgnurl build issues:: 41* Fixing libgnurl build issues::
42* Optional dependencies::
41* Internal dependencies:: 43* Internal dependencies::
42@end menu 44@end menu
43 45
@@ -48,38 +50,47 @@ Suggestions for missing dependencies or wrong version numbers are welcome.
48These packages must be installed before a typical GNUnet installation 50These packages must be installed before a typical GNUnet installation
49can be performed: 51can be performed:
50 52
51@table @asis 53@itemize @bullet
52@item GNU libmicrohttpd 0.9.30 or higher 54@item GNU libmicrohttpd 0.9.30 or higher@footnote{We recommend to build it
55with a GnuTLS version that was configured with libunbound ("DANE support")}
53@item GNU libextractor 1.0 or higher 56@item GNU libextractor 1.0 or higher
54@item GNU libtool 2.2 or higher 57@item GNU libtool 2.2 or higher
55@item GNU libunistring 0.9.1.1 or higher 58@item GNU libunistring 0.9.1.1 or higher
56@item GNU libidn 1.0.0 or higher 59@item GNU libidn 1.0.0 or higher
57@item @uref{https://gnupg.org/software/libgcrypt/index.html, GNU libgcrypt} @uref{https://gnupg.org/ftp/gcrypt/libgcrypt/, 1.6.0} or higher 60@item @uref{https://gnupg.org/software/libgcrypt/, GNU libgcrypt}
58@item @uref{https://gnutls.org/, GnuTLS} @uref{https://www.gnupg.org/ftp/gcrypt/gnutls/v3.2/, 3.2.7} or higher @footnote{compile with libunbound for DANE support; GnuTLS also requires GNU nettle 2.7 (update: GnuTLS 3.2.7 appears NOT to work against GNU nettle > 2.7, due to some API updatings done by nettle. Thus it should be compiled against nettle 2.7 and, in case you get some error on the reference to `rpl_strerror' being undefined, follow the instructions on @uref{http://lists.gnupg.org/pipermail/gnutls-devel/2013-November/006588.html, this} post (and the link inside it)).} 61@uref{https://gnupg.org/ftp/gcrypt/libgcrypt/, 1.6.0} or higher
59@item @uref{https://gnunet.org/gnurl, gnURL} libgnurl 7.34.0 or higher @footnote{must be compiled after @code{GnuTLS}} 62@item @uref{https://gnutls.org/, GnuTLS}@footnote{We recommend to use a
63GnuTLS version that was configured with libunbound ("DANE support")}
64@uref{https://www.gnupg.org/ftp/gcrypt/gnutls/v3.2/, 3.2.7} or higher
65@footnote{We recommend to compile with libunbound for DANE support;
66GnuTLS also requires GNU nettle 2.7 (update: GnuTLS 3.2.7 appears NOT
67to work against GNU nettle > 2.7, due to some API updatings done by
68nettle. Thus it should be compiled against nettle 2.7
69and, in case you get some error on the reference to `rpl_strerror' being
70undefined, follow the instructions on
71@uref{http://lists.gnupg.org/pipermail/gnutls-devel/2013-November/006588.html, this}
72post (and the link inside it)).}
73@item @uref{https://gnunet.org/gnurl, gnURL} libgnurl 7.34.0 or
74higher@footnote{must be compiled after @code{GnuTLS}}
60@item libglpk 4.45 or higher 75@item libglpk 4.45 or higher
61@item @uref{http://www.openssl.org/, OpenSSL} (binary) 1.0 or higher 76@item @uref{http://www.openssl.org/, OpenSSL} (binary) 1.0 or higher
62@item TeX Live 2012 or higher, optional (for gnunet-bcd) 77@item TeX Live 2012 or higher, optional (for gnunet-bcd)
63@item Texinfo 5.2 or higher (for documentation) 78@item Texinfo 5.2 or higher (for documentation)
64@item libpulse 2.0 or higher, optional (for gnunet-conversation) 79@item libsqlite 3.8.0 or higher @footnote{(note that the code will
65@item libopus 1.0.1 or higher, optional (for gnunet-conversation) 80compile and often work with lower version numbers, but you may get subtle
66@item libogg 1.3.0 or higher, optional (for gnunet-conversation) 81bugs with respect to quota management in certain rare cases);
67@item certool (binary) optional @footnote{for convenient installation of the GNS proxy (available as part of Debian's libnss3-tools)} 82alternatively, MySQL or Postgres can also be installed, but those
68@item python-zbar 0.10 or higher, optional (for gnunet-qr) 83databases will require more complex configurations (not
69@item libsqlite 3.8.0 or higher @footnote{(note that the code will compile and often work with lower version numbers, but you may get subtle bugs with respect to quota management in certain rare cases); alternatively, MySQL or Postgres can also be installed, but those databases will require more complex configurations (not recommended for first-time users)} 84recommended for first-time users)}
70@item zlib any version we tested worked 85@item zlib
71@item Gtk+ 3.0 or higher, optional (for gnunet-gtk) 86@end itemize
72@item libgladeui must match Gtk+ version, optional (for gnunet-gtk)
73@item libqrencode 3.0 or higher, optional (for gnunet-namestore-gtk)
74@end table
75
76 87
77@node Fixing libgnurl build issues 88@node Fixing libgnurl build issues
78@subsection Fixing libgnurl build issues 89@subsection Fixing libgnurl build issues
79 90
80If you have to compile libgnurl from source since the version included in your 91If you have to compile libgnurl from source since the version included in
81distribution is to old you perhaps get an error message while running the 92your distribution is to old you perhaps get an error message while
82@file{configure} script: 93running the @file{configure} script:
83 94
84@example 95@example
85$ configure 96$ configure
@@ -90,13 +101,32 @@ checking for 16-bit curl_off_t data type... unknown
90configure: error: cannot find data type for curl_off_t. 101configure: error: cannot find data type for curl_off_t.
91@end example 102@end example
92 103
104@noindent
93Solution: 105Solution:
94 106
95Before running the configure script, set: 107Before running the configure script, set:
96 108
97@code{CFLAGS="-I. -I$BUILD_ROOT/include" } 109@example
110CFLAGS="-I. -I$BUILD_ROOT/include"
111@end example
112
113@node Optional dependencies
114@subsection Optional dependencies
98 115
116These applications must be installed for various experimental or otherwise
117optional features such as @code{gnunet-conversation}, @code{gnunet-gtk}.
99 118
119@itemize @bullet
120@item libpulse 2.0 or higher, optional (for gnunet-conversation)
121@item libopus 1.0.1 or higher, optional (for gnunet-conversation)
122@item libogg 1.3.0 or higher, optional (for gnunet-conversation)
123@item certool (binary) optional @footnote{for convenient installation of
124the GNS proxy (available as part of Debian's libnss3-tools)}
125@item python-zbar 0.10 or higher, optional (for gnunet-qr)
126@item Gtk+ 3.0 or higher, optional (for gnunet-gtk)
127@item libgladeui must match Gtk+ version, optional (for gnunet-gtk)
128@item libqrencode 3.0 or higher, optional (for gnunet-namestore-gtk)
129@end itemize
100 130
101@node Internal dependencies 131@node Internal dependencies
102@subsection Internal dependencies 132@subsection Internal dependencies
@@ -1627,13 +1657,22 @@ GNUnet uses the portable POSIX thread library for multi-threading..@
1627 1657
1628 1658
1629@item 1659@item
1630Save @uref{ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/lib/x86/libpthreadGC2.a, libpthreadGC2.a} (x86) or @uref{ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/lib/x64/libpthreadGC2.a, libpthreadGC2.a} (x64) as libpthread.a into the lib directory (c:\mingw\mingw\lib\libpthread.a) 1660Save @uref{ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/lib/x86
1661/libpthreadGC2.a, libpthreadGC2.a} (x86) or @uref{ftp://sources.redhat.c
1662om/pub/pthreads-win32/dll-latest/lib/x64/libpthreadGC2.a, libpthreadGC2.
1663a} (x64) as libpthread.a into the lib directory (c:\mingw\mingw\lib\libpt
1664hread.a)
1631 1665
1632@item 1666@item
1633Save @uref{ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/lib/x86/pthreadGC2.dll, pthreadGC2.dll} (x86) or @uref{ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/lib/x64/pthreadGC2.dll, libpthreadGC2.a} (x64) into the MinGW bin directory (c:\mingw\mingw\bin) 1667Save @uref{ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/lib/x86
1668/pthreadGC2.dll, pthreadGC2.dll} (x86) or @uref{ftp://sources.redhat.c
1669om/pub/pthreads-win32/dll-latest/lib/x64/pthreadGC2.dll, libpthreadGC2.a}
1670(x64) into the MinGW bin directory (c:\mingw\mingw\bin)
1634 1671
1635@item 1672@item
1636Download all header files from @uref{ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/include/, include/} to the include directory (c:\mingw\mingw\include) 1673Download all header files from @uref{ftp://sources.redhat.com/pub/pthread
1674s-win32/dll-latest/include/, include/} to the @file{include} directory
1675(c:\mingw\mingw\include)
1637@end itemize 1676@end itemize
1638 1677
1639 1678
@@ -1643,7 +1682,9 @@ Download all header files from @uref{ftp://sources.redhat.com/pub/pthreads-win32
1643@ 1682@
1644GNUnet uses the GNU Multiple Precision library for special cryptographic operations.@ 1683GNUnet uses the GNU Multiple Precision library for special cryptographic operations.@
1645@ 1684@
1646Get the GMP binary package from the @uref{http://sourceforge.net/projects/mingwrep/, MinGW repository} and unpack it to the MinGW directory (c:\mingw\mingw) 1685Get the GMP binary package from the
1686@uref{http://sourceforge.net/projects/mingwrep/, MinGW repository} and
1687unpack it to the MinGW directory (c:\mingw\mingw)
1647 1688
1648@item 1689@item
1649@strong{GNU Gettext}@ 1690@strong{GNU Gettext}@