diff options
author | ng0 <ng0@infotropique.org> | 2017-10-20 16:57:29 +0000 |
---|---|---|
committer | ng0 <ng0@infotropique.org> | 2017-10-20 16:57:29 +0000 |
commit | 7a0a978c78054fbf4d26a96aa091d576267b07cb (patch) | |
tree | 2a73220323e60be5b919d2decee1510d8c114916 /doc/chapters | |
parent | 9b9a2c8b892d62d62d0995a5a792f83e6c67c186 (diff) | |
download | gnunet-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.texi | 105 |
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 | ||
4 | This handbook describes how to install (build setup, compilation) and setup | 4 | This handbook describes how to install (build setup, compilation) and |
5 | (configuration, start) GNUnet 0.10.x. After following these instructions you | 5 | setup (configuration, start) GNUnet 0.10.x. After following these |
6 | should be able to install and then start user-interfaces to interact with the | 6 | instructions you should be able to install and then start user-interfaces |
7 | network. | 7 | to interact with the network. |
8 | 8 | ||
9 | This manual is far from complete, and we welcome informed contributions, be it | 9 | This manual is far from complete, and we welcome informed contributions, |
10 | in the form of new chapters or insightful comments. | 10 | be 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 | ||
33 | This document lists the various known dependencies for GNUnet 0.10.x. | 33 | This section lists the various known dependencies for |
34 | GNUnet @value{EDITION}. | ||
34 | Suggestions for missing dependencies or wrong version numbers are welcome. | 35 | Suggestions 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. | |||
48 | These packages must be installed before a typical GNUnet installation | 50 | These packages must be installed before a typical GNUnet installation |
49 | can be performed: | 51 | can 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 |
55 | with 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 |
63 | GnuTLS 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; | ||
66 | GnuTLS also requires GNU nettle 2.7 (update: GnuTLS 3.2.7 appears NOT | ||
67 | to work against GNU nettle > 2.7, due to some API updatings done by | ||
68 | nettle. Thus it should be compiled against nettle 2.7 | ||
69 | and, in case you get some error on the reference to `rpl_strerror' being | ||
70 | undefined, follow the instructions on | ||
71 | @uref{http://lists.gnupg.org/pipermail/gnutls-devel/2013-November/006588.html, this} | ||
72 | post (and the link inside it)).} | ||
73 | @item @uref{https://gnunet.org/gnurl, gnURL} libgnurl 7.34.0 or | ||
74 | higher@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) | 80 | compile and often work with lower version numbers, but you may get subtle |
66 | @item libogg 1.3.0 or higher, optional (for gnunet-conversation) | 81 | bugs 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)} | 82 | alternatively, MySQL or Postgres can also be installed, but those |
68 | @item python-zbar 0.10 or higher, optional (for gnunet-qr) | 83 | databases 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)} | 84 | recommended 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 | ||
80 | If you have to compile libgnurl from source since the version included in your | 91 | If you have to compile libgnurl from source since the version included in |
81 | distribution is to old you perhaps get an error message while running the | 92 | your distribution is to old you perhaps get an error message while |
82 | @file{configure} script: | 93 | running 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 | |||
90 | configure: error: cannot find data type for curl_off_t. | 101 | configure: error: cannot find data type for curl_off_t. |
91 | @end example | 102 | @end example |
92 | 103 | ||
104 | @noindent | ||
93 | Solution: | 105 | Solution: |
94 | 106 | ||
95 | Before running the configure script, set: | 107 | Before running the configure script, set: |
96 | 108 | ||
97 | @code{CFLAGS="-I. -I$BUILD_ROOT/include" } | 109 | @example |
110 | CFLAGS="-I. -I$BUILD_ROOT/include" | ||
111 | @end example | ||
112 | |||
113 | @node Optional dependencies | ||
114 | @subsection Optional dependencies | ||
98 | 115 | ||
116 | These applications must be installed for various experimental or otherwise | ||
117 | optional 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 | ||
124 | the 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 |
1630 | Save @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) | 1660 | Save @uref{ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/lib/x86 |
1661 | /libpthreadGC2.a, libpthreadGC2.a} (x86) or @uref{ftp://sources.redhat.c | ||
1662 | om/pub/pthreads-win32/dll-latest/lib/x64/libpthreadGC2.a, libpthreadGC2. | ||
1663 | a} (x64) as libpthread.a into the lib directory (c:\mingw\mingw\lib\libpt | ||
1664 | hread.a) | ||
1631 | 1665 | ||
1632 | @item | 1666 | @item |
1633 | Save @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) | 1667 | Save @uref{ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/lib/x86 |
1668 | /pthreadGC2.dll, pthreadGC2.dll} (x86) or @uref{ftp://sources.redhat.c | ||
1669 | om/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 |
1636 | Download all header files from @uref{ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/include/, include/} to the include directory (c:\mingw\mingw\include) | 1673 | Download all header files from @uref{ftp://sources.redhat.com/pub/pthread |
1674 | s-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 | @ |
1644 | GNUnet uses the GNU Multiple Precision library for special cryptographic operations.@ | 1683 | GNUnet uses the GNU Multiple Precision library for special cryptographic operations.@ |
1645 | @ | 1684 | @ |
1646 | Get the GMP binary package from the @uref{http://sourceforge.net/projects/mingwrep/, MinGW repository} and unpack it to the MinGW directory (c:\mingw\mingw) | 1685 | Get the GMP binary package from the |
1686 | @uref{http://sourceforge.net/projects/mingwrep/, MinGW repository} and | ||
1687 | unpack it to the MinGW directory (c:\mingw\mingw) | ||
1647 | 1688 | ||
1648 | @item | 1689 | @item |
1649 | @strong{GNU Gettext}@ | 1690 | @strong{GNU Gettext}@ |