diff options
author | ng0 <ng0@infotropique.org> | 2017-10-30 14:35:18 +0000 |
---|---|---|
committer | ng0 <ng0@infotropique.org> | 2017-10-30 14:35:18 +0000 |
commit | 123d64da992e752b7f34d2d74f4f3c85ca57edce (patch) | |
tree | 300d7bd546596c5d17565277e77de953c5a43b72 | |
parent | e7881821079fe8a4e8c25a137eaff8ed2894fb8f (diff) | |
download | gnunet-123d64da992e752b7f34d2d74f4f3c85ca57edce.tar.gz gnunet-123d64da992e752b7f34d2d74f4f3c85ca57edce.zip |
installation: some comments + introducing the 'generic installation from source' collections
-rw-r--r-- | doc/documentation/chapters/installation.texi | 299 | ||||
-rw-r--r-- | doc/documentation/gnunet.texi | 1 |
2 files changed, 186 insertions, 114 deletions
diff --git a/doc/documentation/chapters/installation.texi b/doc/documentation/chapters/installation.texi index c3a64639b..d3084eea4 100644 --- a/doc/documentation/chapters/installation.texi +++ b/doc/documentation/chapters/installation.texi | |||
@@ -1,19 +1,20 @@ | |||
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 | 4 | This handbook describes how to install (build, setup, compile) and |
5 | setup (configuration, start) GNUnet 0.10.x. After following these | 5 | setup (configure, start) GNUnet @value{VERSION}. After following these |
6 | instructions you should be able to install and then start user-interfaces | 6 | instructions you should be able to install and then start user-interfaces |
7 | to interact with the network. | 7 | to interact with the network. |
8 | 8 | ||
9 | This manual is far from complete, and we welcome informed contributions, | 9 | Note: This manual is far from complete, and we welcome informed |
10 | be it in the form of new chapters or insightful comments. | 10 | contributions, be it in the form of new chapters or insightful comments. |
11 | 11 | ||
12 | @menu | 12 | @menu |
13 | * Dependencies:: | 13 | * Dependencies:: |
14 | * Pre-installation notes:: | 14 | * Pre-installation notes:: |
15 | * Generic installation instructions:: | 15 | * Generic installation instructions:: |
16 | * Build instructions for Ubuntu 12.04 using Git:: | 16 | * Build instructions for Ubuntu 12.04 using Git:: |
17 | * Build instructions for software builds from source:: | ||
17 | * Build Instructions for Microsoft Windows Platforms:: | 18 | * Build Instructions for Microsoft Windows Platforms:: |
18 | * Build instructions for Debian 7.5:: | 19 | * Build instructions for Debian 7.5:: |
19 | * Installing GNUnet from Git on Ubuntu 14.4:: | 20 | * Installing GNUnet from Git on Ubuntu 14.4:: |
@@ -63,7 +64,7 @@ can be performed: | |||
63 | @item miniupnpc | 64 | @item miniupnpc |
64 | @item gettext | 65 | @item gettext |
65 | @item which | 66 | @item which |
66 | @item texinfo | 67 | @item texinfo @geq{} 5.2 |
67 | @item GNU libmicrohttpd @geq{} 0.9.30 @footnote{We recommend to build it | 68 | @item GNU libmicrohttpd @geq{} 0.9.30 @footnote{We recommend to build it |
68 | with a GnuTLS version that was configured with libunbound} | 69 | with a GnuTLS version that was configured with libunbound} |
69 | @item GNU libextractor @geq{} 1.0 | 70 | @item GNU libextractor @geq{} 1.0 |
@@ -99,9 +100,13 @@ recommended for first-time users)} | |||
99 | @node Fixing libgnurl build issues | 100 | @node Fixing libgnurl build issues |
100 | @subsection Fixing libgnurl build issues | 101 | @subsection Fixing libgnurl build issues |
101 | 102 | ||
102 | If you have to compile libgnurl from source since the version included in | 103 | @c FIXME: Obviously this subsection should be evaluated and |
103 | your distribution is to old you perhaps get an error message while | 104 | @c if still necessary moved into gnURL itself (README) or |
104 | running the @file{configure} script: | 105 | @c into a separate section which deals with gnURL. |
106 | If you have to compile libgnurl from source (for example if the version | ||
107 | included in your distribution is too old or it's not included at all) | ||
108 | you perhaps might get an error message while running the | ||
109 | @command{configure} script: | ||
105 | 110 | ||
106 | @example | 111 | @example |
107 | $ configure | 112 | $ configure |
@@ -115,7 +120,7 @@ configure: error: cannot find data type for curl_off_t. | |||
115 | @noindent | 120 | @noindent |
116 | Solution: | 121 | Solution: |
117 | 122 | ||
118 | Before running the configure script, set: | 123 | Before running the @command{configure} script, set: |
119 | 124 | ||
120 | @example | 125 | @example |
121 | CFLAGS="-I. -I$BUILD_ROOT/include" | 126 | CFLAGS="-I. -I$BUILD_ROOT/include" |
@@ -125,18 +130,28 @@ CFLAGS="-I. -I$BUILD_ROOT/include" | |||
125 | @subsection Optional dependencies | 130 | @subsection Optional dependencies |
126 | 131 | ||
127 | These applications must be installed for various experimental or otherwise | 132 | These applications must be installed for various experimental or otherwise |
128 | optional features such as @code{gnunet-conversation}, @code{gnunet-gtk}. | 133 | optional features such as @command{gnunet-conversation}, |
134 | and @command{gnunet-gtk} (most of these features are only build if you | ||
135 | configure GNUnet with @command{--enable-experimental}): | ||
129 | 136 | ||
130 | @itemize @bullet | 137 | @itemize @bullet |
131 | @item libpulse 2.0 or higher, optional (for gnunet-conversation) | 138 | @item libpulse @geq{} 2.0, |
132 | @item libopus 1.0.1 or higher, optional (for gnunet-conversation) | 139 | optional (for @command{gnunet-conversation}) |
133 | @item libogg 1.3.0 or higher, optional (for gnunet-conversation) | 140 | @item libopus @geq{} 1.0.1, |
134 | @item certool (binary) optional @footnote{for convenient installation of | 141 | optional (for @command{gnunet-conversation}) |
135 | the GNS proxy (available as part of Debian's libnss3-tools)} | 142 | @item libogg @geq{} 1.3.0, |
136 | @item python-zbar 0.10 or higher, optional (for gnunet-qr) | 143 | optional (for @command{gnunet-conversation}) |
137 | @item Gtk+ 3.0 or higher, optional (for gnunet-gtk) | 144 | @item libnss contained @command{certool} binary, |
138 | @item libgladeui must match Gtk+ version, optional (for gnunet-gtk) | 145 | optional for convenient installation of |
139 | @item libqrencode 3.0 or higher, optional (for gnunet-namestore-gtk) | 146 | the GNS proxy. |
147 | @item python-zbar @geq{} 0.10, | ||
148 | optional (for @command{gnunet-qr}) | ||
149 | @item Gtk+ @geq{} 3.0, | ||
150 | optional (for @command{gnunet-gtk}) | ||
151 | @item libgladeui (must match Gtk+ version), | ||
152 | optional (for @command{gnunet-gtk}) | ||
153 | @item libqrencode @geq{} 3.0, | ||
154 | optional (for @command{gnunet-namestore-gtk}) | ||
140 | @end itemize | 155 | @end itemize |
141 | 156 | ||
142 | @node Internal dependencies | 157 | @node Internal dependencies |
@@ -145,10 +160,11 @@ the GNS proxy (available as part of Debian's libnss3-tools)} | |||
145 | This section tries to give an overview of what processes a typical GNUnet | 160 | This section tries to give an overview of what processes a typical GNUnet |
146 | peer running a particular application would consist of. All of the | 161 | peer running a particular application would consist of. All of the |
147 | processes listed here should be automatically started by | 162 | processes listed here should be automatically started by |
148 | @code{gnunet-arm -s}. | 163 | @command{gnunet-arm -s}. |
149 | The list is given as a rough first guide to users for failure diagnostics. | 164 | The list is given as a rough first guide to users for failure diagnostics. |
150 | Ideally, end-users should never have to worry about these internal | 165 | Ideally, end-users should never have to worry about these internal |
151 | dependencies. | 166 | dependencies. |
167 | |||
152 | In terms of internal dependencies, a minimum file-sharing system consists | 168 | In terms of internal dependencies, a minimum file-sharing system consists |
153 | of the following GNUnet processes (in order of dependency): | 169 | of the following GNUnet processes (in order of dependency): |
154 | 170 | ||
@@ -243,21 +259,22 @@ Other dependencies that you should strongly consider to install is a | |||
243 | database (MySQL, sqlite or Postgres). | 259 | database (MySQL, sqlite or Postgres). |
244 | The following instructions will assume that you installed at least sqlite. | 260 | The following instructions will assume that you installed at least sqlite. |
245 | For most distributions you should be able to find pre-build packages for | 261 | For most distributions you should be able to find pre-build packages for |
246 | the database. Again, make sure to install the client libraries and the | 262 | the database. Again, make sure to install the client libraries @b{and} the |
247 | respective development headers (if they are packaged separately) as well. | 263 | respective development headers (if they are packaged separately) as well. |
248 | 264 | ||
249 | You can find specific, detailed instructions for installing of the | 265 | You can find specific, detailed instructions for installing of the |
250 | dependencies (and possibly the rest of the GNUnet installation) in the | 266 | dependencies (and possibly the rest of the GNUnet installation) in the |
251 | platform-specific descriptions, which can be found in the Index. | 267 | platform-specific descriptions, which can be found in the Index. |
252 | Please consult them now. | 268 | Please consult them now. |
253 | If your distribution is not listed, please study the instructions for | 269 | If your distribution is not listed, please study |
254 | Debian stable carefully as you try to install the dependencies for your | 270 | @xref{Build instructions for Debian 8}, the build instructions for |
271 | Debian stable, carefully as you try to install the dependencies for your | ||
255 | own distribution. | 272 | own distribution. |
256 | Contributing additional instructions for further platforms is always | 273 | Contributing additional instructions for further platforms is always |
257 | appreciated. | 274 | appreciated. |
258 | Please take in mind that operating system development tends to move at | 275 | Please take in mind that operating system development tends to move at |
259 | a rather fast speed. Due to this you should be aware that some of | 276 | a rather fast speed. Due to this you should be aware that some of |
260 | the instructionss could be outdated by the time you are reading this. | 277 | the instructions could be outdated by the time you are reading this. |
261 | If you find a mistake, please tell us about it (or even better: send | 278 | If you find a mistake, please tell us about it (or even better: send |
262 | a patch to the documentation to fix it!). | 279 | a patch to the documentation to fix it!). |
263 | 280 | ||
@@ -272,7 +289,8 @@ While it is possible to build and install GNUnet without having root | |||
272 | access, we will assume that you have full control over your system in | 289 | access, we will assume that you have full control over your system in |
273 | these instructions. | 290 | these instructions. |
274 | First, you should create a system user @emph{gnunet} and an additional | 291 | First, you should create a system user @emph{gnunet} and an additional |
275 | group @emph{gnunetdns}. On Debian and Ubuntu GNU/Linux, type: | 292 | group @emph{gnunetdns}. On the GNU/Linux distributions Debian and Ubuntu, |
293 | type: | ||
276 | 294 | ||
277 | @example | 295 | @example |
278 | # adduser --system --home /var/lib/gnunet --group \ | 296 | # adduser --system --home /var/lib/gnunet --group \ |
@@ -281,7 +299,7 @@ group @emph{gnunetdns}. On Debian and Ubuntu GNU/Linux, type: | |||
281 | @end example | 299 | @end example |
282 | 300 | ||
283 | @noindent | 301 | @noindent |
284 | On other Unixes, this should have the same effect: | 302 | On other Unixes and GNU systems, this should have the same effect: |
285 | 303 | ||
286 | @example | 304 | @example |
287 | # useradd --system --groups gnunet --home-dir /var/lib/gnunet | 305 | # useradd --system --groups gnunet --home-dir /var/lib/gnunet |
@@ -291,8 +309,8 @@ On other Unixes, this should have the same effect: | |||
291 | Now compile and install GNUnet using: | 309 | Now compile and install GNUnet using: |
292 | 310 | ||
293 | @example | 311 | @example |
294 | $ tar xvf gnunet-0.10.?.tar.gz | 312 | $ tar xvf gnunet-@value{VERSION}.tar.gz |
295 | $ cd gnunet-0.10.? | 313 | $ cd gnunet-@value{VERSION} |
296 | $ ./configure --with-sudo=sudo --with-nssdir=/lib | 314 | $ ./configure --with-sudo=sudo --with-nssdir=/lib |
297 | $ make | 315 | $ make |
298 | $ sudo make install | 316 | $ sudo make install |
@@ -300,17 +318,19 @@ $ sudo make install | |||
300 | 318 | ||
301 | If you want to be able to enable DEBUG-level log messages, add | 319 | If you want to be able to enable DEBUG-level log messages, add |
302 | @code{--enable-logging=verbose} to the end of the | 320 | @code{--enable-logging=verbose} to the end of the |
303 | @code{./configure} command. | 321 | @command{./configure} command. |
304 | DEBUG-level log messages are in English-only and should only be useful for | 322 | @code{DEBUG}-level log messages are in English only and |
305 | developers (or for filing really detailed bug reports). | 323 | should only be useful for developers (or for filing |
324 | really detailed bug reports). | ||
306 | 325 | ||
307 | Finally, you probably want to compile @code{gnunet-gtk}, which | 326 | Finally, you probably want to compile @command{gnunet-gtk}, which |
308 | includes gnunet-setup (graphical tool for configuration) | 327 | includes @command{gnunet-setup} (a graphical tool for |
309 | and @code{gnunet-fs-gtk} (graphical tool for file-sharing): | 328 | GNUnet configuration) and @command{gnunet-fs-gtk} (a graphical tool for |
329 | GNUnet file-sharing): | ||
310 | 330 | ||
311 | @example | 331 | @example |
312 | $ tar xvf gnunet-gtk-0.10.?.tar.gz | 332 | $ tar xvf gnunet-gtk-@value{VERSION}.tar.gz |
313 | $ cd gnunet-gtk-0.10.? | 333 | $ cd gnunet-gtk-@value{VERSION} |
314 | $ ./configure --with-gnunet=/usr/local/ | 334 | $ ./configure --with-gnunet=/usr/local/ |
315 | $ make | 335 | $ make |
316 | $ sudo make install | 336 | $ sudo make install |
@@ -329,22 +349,23 @@ USER_ONLY = NO | |||
329 | @end example | 349 | @end example |
330 | 350 | ||
331 | @noindent | 351 | @noindent |
332 | You may need to update your ld.so cache to include files installed in | 352 | You may need to update your @code{ld.so} cache to include |
333 | @file{/usr/local/lib}: | 353 | files installed in @file{/usr/local/lib}: |
334 | 354 | ||
335 | @example | 355 | @example |
336 | # ldconfig | 356 | # ldconfig |
337 | @end example | 357 | @end example |
338 | 358 | ||
339 | @noindent | 359 | @noindent |
340 | Then, switch from user root to user gnunet to start the peer: | 360 | Then, switch from user @code{root} to user @code{gnunet} to start |
361 | the peer: | ||
341 | 362 | ||
342 | @example | 363 | @example |
343 | # su -s /bin/sh - gnunet | 364 | # su -s /bin/sh - gnunet |
344 | $ gnunet-arm -c /etc/gnunet.conf -s | 365 | $ gnunet-arm -c /etc/gnunet.conf -s |
345 | @end example | 366 | @end example |
346 | 367 | ||
347 | You may also want to add the last line in the gnunet users @file{crontab} | 368 | You may also want to add the last line in the gnunet user's @file{crontab} |
348 | prefixed with @code{@@reboot} so that it is executed whenever the system | 369 | prefixed with @code{@@reboot} so that it is executed whenever the system |
349 | is booted: | 370 | is booted: |
350 | 371 | ||
@@ -356,7 +377,7 @@ is booted: | |||
356 | This will only start the system-wide GNUnet services. | 377 | This will only start the system-wide GNUnet services. |
357 | Type exit to get back your root shell. | 378 | Type exit to get back your root shell. |
358 | Now, you need to configure the per-user part. For each | 379 | Now, you need to configure the per-user part. For each |
359 | $USER on the system, run: | 380 | $USER that should get access to GNUnet on the system, run: |
360 | 381 | ||
361 | @example | 382 | @example |
362 | # adduser $USER gnunet | 383 | # adduser $USER gnunet |
@@ -395,7 +416,7 @@ For those services, systems with more than one user may require each user | |||
395 | to specify a different port number in their personal configuration file. | 416 | to specify a different port number in their personal configuration file. |
396 | 417 | ||
397 | Finally, the user should perform the basic initial setup for the GNU Name | 418 | Finally, the user should perform the basic initial setup for the GNU Name |
398 | System. This is done by running two commands: | 419 | System (GNS). This is done by running two commands: |
399 | 420 | ||
400 | @example | 421 | @example |
401 | $ gnunet-gns-import.sh | 422 | $ gnunet-gns-import.sh |
@@ -404,7 +425,7 @@ $ gnunet-gns-proxy-setup-ca | |||
404 | 425 | ||
405 | @noindent | 426 | @noindent |
406 | The first generates the default zones, wheras the second setups the GNS | 427 | The first generates the default zones, wheras the second setups the GNS |
407 | Certificate Authority with the user's browser. Now, to actiave GNS in the | 428 | Certificate Authority with the user's browser. Now, to activate GNS in the |
408 | normal DNS resolution process, you need to edit your | 429 | normal DNS resolution process, you need to edit your |
409 | @file{/etc/nsswitch.conf} where you should find a line like this: | 430 | @file{/etc/nsswitch.conf} where you should find a line like this: |
410 | 431 | ||
@@ -431,7 +452,6 @@ your system, it should have been created during the installation. | |||
431 | @node Build instructions for Ubuntu 12.04 using Git | 452 | @node Build instructions for Ubuntu 12.04 using Git |
432 | @section Build instructions for Ubuntu 12.04 using Git | 453 | @section Build instructions for Ubuntu 12.04 using Git |
433 | 454 | ||
434 | |||
435 | @menu | 455 | @menu |
436 | * Install the required build tools:: | 456 | * Install the required build tools:: |
437 | * Install libgcrypt 1.6 and libgpg-error:: | 457 | * Install libgcrypt 1.6 and libgpg-error:: |
@@ -516,20 +536,7 @@ $ sudo make install ; cd .. | |||
516 | @node Install libgnurl | 536 | @node Install libgnurl |
517 | @subsection Install libgnurl | 537 | @subsection Install libgnurl |
518 | 538 | ||
519 | @example | 539 | Follow @ref{generic source installation - libgnurl}. |
520 | $ wget https://gnunet.org/sites/default/files/gnurl-7.34.0.tar.bz2 | ||
521 | $ tar xf gnurl-7.34.0.tar.bz2 | ||
522 | $ cd gnurl-7.34.0 | ||
523 | $ ./configure --enable-ipv6 --with-gnutls --without-libssh2 \ | ||
524 | --without-libmetalink --without-winidn --without-librtmp \ | ||
525 | --without-nghttp2 --without-nss --without-cyassl \ | ||
526 | --without-polarssl --without-ssl --without-winssl \ | ||
527 | --without-darwinssl --disable-sspi --disable-ntlm-wb \ | ||
528 | --disable-ldap --disable-rtsp --disable-dict --disable-telnet \ | ||
529 | --disable-tftp --disable-pop3 --disable-imap --disable-smtp \ | ||
530 | --disable-gopher --disable-file --disable-ftp | ||
531 | $ sudo make install ; cd .. | ||
532 | @end example | ||
533 | 540 | ||
534 | @node Install libmicrohttpd from Git | 541 | @node Install libmicrohttpd from Git |
535 | @subsection Install libmicrohttpd from Git | 542 | @subsection Install libmicrohttpd from Git |
@@ -660,7 +667,7 @@ $ ./bootstrap | |||
660 | @end example | 667 | @end example |
661 | 668 | ||
662 | Use the required configure call including the optional installation prefix | 669 | Use the required configure call including the optional installation prefix |
663 | PREFIX or the sudo permissions: | 670 | @code{PREFIX} or the sudo permissions: |
664 | 671 | ||
665 | @example | 672 | @example |
666 | $ ./configure [ --with-sudo | --with-prefix=PREFIX ] | 673 | $ ./configure [ --with-sudo | --with-prefix=PREFIX ] |
@@ -690,10 +697,10 @@ Install depencies: | |||
690 | 697 | ||
691 | @example | 698 | @example |
692 | $ sudo apt-get install libgtk-3-dev libunique-3.0-dev libgladeui-dev \ | 699 | $ sudo apt-get install libgtk-3-dev libunique-3.0-dev libgladeui-dev \ |
693 | libqrencode-dev | 700 | libqrencode-dev |
694 | @end example | 701 | @end example |
695 | 702 | ||
696 | To build GNUnet (with an optional prefix)and execute: | 703 | Build GNUnet (with an optional prefix) and execute: |
697 | 704 | ||
698 | @example | 705 | @example |
699 | $ git clone https://gnunet.org/git/gnunet-gtk/ | 706 | $ git clone https://gnunet.org/git/gnunet-gtk/ |
@@ -703,6 +710,99 @@ $ ./configure [--prefix=PREFIX] --with-gnunet=DIRECTORY | |||
703 | $ make; sudo make install | 710 | $ make; sudo make install |
704 | @end example | 711 | @end example |
705 | 712 | ||
713 | @node Build instructions for software builds from source | ||
714 | @section Build instructions for software builds from source | ||
715 | |||
716 | This section describes software builds in case your operating | ||
717 | system lacks binary substitutes / binary builds for some dependencies | ||
718 | of GNUnet. | ||
719 | It is assumed that you have installed common build dependencies | ||
720 | and that these instructions are treated as generic without any | ||
721 | debugging help. | ||
722 | It is furthermore assumed that you use the release tarballs of | ||
723 | the software, installation from the respective version control | ||
724 | sources might differ in ways that are only minimal different | ||
725 | (for example a dependency on autotools etc). | ||
726 | |||
727 | @menu | ||
728 | * generic source installation - libav:: | ||
729 | * generic source installation - libextractor:: | ||
730 | * generic source installation - libgpg-error:: | ||
731 | * generic source installation - libgcrypt:: | ||
732 | * generic source installation - gnutls:: | ||
733 | * generic source installation - libmicrohttpd:: | ||
734 | * generic source installation - libgnurl:: | ||
735 | @end menu | ||
736 | |||
737 | @node generic source installation - libav | ||
738 | @subsection generic source installation - libav | ||
739 | @example | ||
740 | $ wget https://libav.org/releases/libav-9.10.tar.xz | ||
741 | $ cd libav-0.9 ; ./configure --enable-shared; | ||
742 | $ make; sudo make install; cd .. | ||
743 | @end example | ||
744 | |||
745 | @node generic source installation - libextractor | ||
746 | @subsection generic source installation - libextractor | ||
747 | @example | ||
748 | $ wget https://ftp.gnu.org/gnu/libextractor/libextractor-1.3.tar.gz | ||
749 | $ tar xvf libextractor-1.3.tar.gz | ||
750 | $ cd libextractor-1.3 ; ./configure; | ||
751 | $ make ; sudo make install; cd .. | ||
752 | @end example | ||
753 | |||
754 | @node generic source installation - libgpg-error | ||
755 | @subsection generic source installation - libgpg-error | ||
756 | @example | ||
757 | $ wget https://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-1.12.tar.bz2 | ||
758 | $ tar xvf libgpg-error-1.12.tar.bz2 | ||
759 | $ cd libgpg-error-1.12; ./configure; | ||
760 | $ make ; sudo make install; cd .. | ||
761 | @end example | ||
762 | |||
763 | @node generic source installation - libgcrypt | ||
764 | @subsection generic source installation - libgcrypt | ||
765 | @example | ||
766 | $ wget https://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-1.6.0.tar.bz2 | ||
767 | $ tar xvf libgcrypt-1.6.0.tar.bz2 | ||
768 | $ cd libgcrypt-1.6.0; ./configure --with-gpg-error-prefix=/usr/local; | ||
769 | $ make ; sudo make install ; cd .. | ||
770 | @end example | ||
771 | |||
772 | @node generic source installation - gnutls | ||
773 | @subsection generic source installation - gnutls | ||
774 | @example | ||
775 | $ wget ftp://ftp.gnutls.org/gcrypt/gnutls/v3.2/gnutls-3.2.7.tar.xz | ||
776 | $ tar xvf gnutls-3.2.7.tar.xz | ||
777 | $ cd gnutls-3.2.7 ; ./configure; | ||
778 | $ make ; sudo make install ; cd .. | ||
779 | @end example | ||
780 | |||
781 | @node generic source installation - libmicrohttpd | ||
782 | @subsection generic source installation - libmicrohttpd | ||
783 | @example | ||
784 | $ wget https://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.33.tar.gz | ||
785 | $ tar xvf libmicrohttpd-0.9.33.tar.gz | ||
786 | $ cd libmicrohttpd-0.9.33; ./configure; | ||
787 | $ make ; sudo make install ; cd .. | ||
788 | @end example | ||
789 | |||
790 | @node generic source installation - libgnurl | ||
791 | @subsection generic source installation - libgnurl | ||
792 | @example | ||
793 | $ wget https://gnunet.org/sites/default/files/gnurl-7.34.0.tar.bz2 | ||
794 | $ tar xvf gnurl-7.34.0.tar.bz2 | ||
795 | $ cd gnurl-7.34.0 | ||
796 | $ ./configure --enable-ipv6 --with-gnutls=/usr/local --without-libssh2 \ | ||
797 | --without-libmetalink --without-winidn --without-librtmp \ | ||
798 | --without-nghttp2 --without-nss --without-cyassl --without-polarssl \ | ||
799 | --without-ssl --without-winssl --without-darwinssl --disable-sspi \ | ||
800 | --disable-ntlm-wb --disable-ldap --disable-rtsp --disable-dict \ | ||
801 | --disable-telnet --disable-tftp --disable-pop3 --disable-imap \ | ||
802 | --disable-smtp --disable-gopher --disable-file --disable-ftp | ||
803 | $ make ; sudo make install; cd .. | ||
804 | @end example | ||
805 | |||
706 | @node Build Instructions for Microsoft Windows Platforms | 806 | @node Build Instructions for Microsoft Windows Platforms |
707 | @section Build Instructions for Microsoft Windows Platforms | 807 | @section Build Instructions for Microsoft Windows Platforms |
708 | 808 | ||
@@ -743,6 +843,9 @@ Windows Vista and later will also work, but | |||
743 | @strong{non-server version can not run a VPN-Exit-Node} as the NAT | 843 | @strong{non-server version can not run a VPN-Exit-Node} as the NAT |
744 | features have been removed as of Windows Vista. | 844 | features have been removed as of Windows Vista. |
745 | 845 | ||
846 | @c TODO: We should document Windows 10! | ||
847 | @c It seems like the situation hasn't changed with W10 | ||
848 | |||
746 | @node Dependencies & Initial Setup | 849 | @node Dependencies & Initial Setup |
747 | @subsection Dependencies & Initial Setup | 850 | @subsection Dependencies & Initial Setup |
748 | 851 | ||
@@ -752,11 +855,11 @@ features have been removed as of Windows Vista. | |||
752 | @item | 855 | @item |
753 | Install a fresh version of @strong{Python 2.x}, even if you are using a | 856 | Install a fresh version of @strong{Python 2.x}, even if you are using a |
754 | x64-OS, install a 32-bit version for use with sbuild. | 857 | x64-OS, install a 32-bit version for use with sbuild. |
755 | Python 3.0 currently is incompatible. | 858 | Python 3.0 is currently incompatible. |
756 | 859 | ||
757 | @item | 860 | @item |
758 | Install your favorite @uref{http://code.google.com/p/tortoisegit/, GIT} & | 861 | Install your favorite @uref{http://code.google.com/p/tortoisegit/, git} & |
759 | @uref{http://tortoisesvn.net/, SVN}-clients. | 862 | @uref{http://tortoisesvn.net/, subversion}-clients. |
760 | 863 | ||
761 | @item | 864 | @item |
762 | You will also need some archive-manager like | 865 | You will also need some archive-manager like |
@@ -1040,44 +1143,20 @@ You might want to do this as a "normal" user and only run the | |||
1040 | @code{make install} steps as root (hence the @code{sudo} in the | 1143 | @code{make install} steps as root (hence the @code{sudo} in the |
1041 | commands below). Also, you do this from any | 1144 | commands below). Also, you do this from any |
1042 | directory. We begin by downloading all dependencies, then extracting the | 1145 | directory. We begin by downloading all dependencies, then extracting the |
1043 | sources, and finally compiling and installing the libraries:@ | 1146 | sources, and finally compiling and installing the libraries. |
1044 | 1147 | ||
1045 | @example | 1148 | For these steps, follow the instructions given in the |
1046 | $ wget https://libav.org/releases/libav-9.10.tar.xz | 1149 | installation from source instruction in this order: |
1047 | $ wget http://ftp.gnu.org/gnu/libextractor/libextractor-1.3.tar.gz | 1150 | |
1048 | $ wget ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-1.12.tar.bz2 | 1151 | @itemize @bullet |
1049 | $ wget ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-1.6.0.tar.bz2 | 1152 | @item @ref{generic source installation - libav} |
1050 | $ wget ftp://ftp.gnutls.org/gcrypt/gnutls/v3.2/gnutls-3.2.7.tar.xz | 1153 | @item @ref{generic source installation - libextractor} |
1051 | $ wget http://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.33.tar.gz | 1154 | @item @ref{generic source installation - libgpg-error} |
1052 | $ wget https://gnunet.org/sites/default/files/gnurl-7.34.0.tar.bz2 | 1155 | @item @ref{generic source installation - libgcrypt} |
1053 | $ tar xvf libextractor-1.3.tar.gz | 1156 | @item @ref{generic source installation - gnutls} |
1054 | $ tar xvf libgpg-error-1.12.tar.bz2 | 1157 | @item @ref{generic source installation - libmicrohttpd} |
1055 | $ tar xvf libgcrypt-1.6.0.tar.bz2 | 1158 | @item @ref{generic source installation - libgnurl} |
1056 | $ tar xvf gnutls-3.2.7.tar.xz | 1159 | @end itemize |
1057 | $ tar xvf libmicrohttpd-0.9.33.tar.gz | ||
1058 | $ tar xvf gnurl-7.34.0.tar.bz2 | ||
1059 | $ cd libav-0.9 ; ./configure --enable-shared; | ||
1060 | $ make; sudo make install; cd .. | ||
1061 | $ cd libextractor-1.3 ; ./configure; | ||
1062 | $ make ; sudo make install; cd .. | ||
1063 | $ cd libgpg-error-1.12; ./configure; | ||
1064 | $ make ; sudo make install; cd .. | ||
1065 | $ cd libgcrypt-1.6.0; ./configure --with-gpg-error-prefix=/usr/local; | ||
1066 | $ make ; sudo make install ; cd .. | ||
1067 | $ cd gnutls-3.2.7 ; ./configure; | ||
1068 | $ make ; sudo make install ; cd .. | ||
1069 | $ cd libmicrohttpd-0.9.33; ./configure; | ||
1070 | $ make ; sudo make install ; cd .. | ||
1071 | $ cd gnurl-7.34.0 | ||
1072 | $ ./configure --enable-ipv6 --with-gnutls=/usr/local --without-libssh2 \ | ||
1073 | --without-libmetalink --without-winidn --without-librtmp \ | ||
1074 | --without-nghttp2 --without-nss --without-cyassl --without-polarssl \ | ||
1075 | --without-ssl --without-winssl --without-darwinssl --disable-sspi \ | ||
1076 | --disable-ntlm-wb --disable-ldap --disable-rtsp --disable-dict \ | ||
1077 | --disable-telnet --disable-tftp --disable-pop3 --disable-imap \ | ||
1078 | --disable-smtp --disable-gopher --disable-file --disable-ftp | ||
1079 | $ make ; sudo make install; cd .. | ||
1080 | @end example | ||
1081 | 1160 | ||
1082 | @node Installing GNUnet from source | 1161 | @node Installing GNUnet from source |
1083 | @subsection Installing GNUnet from source | 1162 | @subsection Installing GNUnet from source |
@@ -1325,22 +1404,14 @@ libraries: | |||
1325 | 1404 | ||
1326 | @example | 1405 | @example |
1327 | $ wget ftp://ftp.gnutls.org/gcrypt/gnutls/v3.3/gnutls-3.3.12.tar.xz | 1406 | $ wget ftp://ftp.gnutls.org/gcrypt/gnutls/v3.3/gnutls-3.3.12.tar.xz |
1328 | $ wget https://gnunet.org/sites/default/files/gnurl-7.40.0.tar.bz2 | ||
1329 | $ tar xvf gnutls-3.3.12.tar.xz | 1407 | $ tar xvf gnutls-3.3.12.tar.xz |
1330 | $ tar xvf gnurl-7.40.0.tar.bz2 | ||
1331 | $ cd gnutls-3.3.12 ; ./configure ; make ; sudo make install ; cd .. | 1408 | $ cd gnutls-3.3.12 ; ./configure ; make ; sudo make install ; cd .. |
1332 | $ cd gnurl-7.40.0 | ||
1333 | $ ./configure --enable-ipv6 --with-gnutls=/usr/local --without-libssh2 \ | ||
1334 | --without-libmetalink --without-winidn --without-librtmp \ | ||
1335 | --without-nghttp2 --without-nss --without-cyassl --without-polarssl \ | ||
1336 | --without-ssl --without-winssl --without-darwinssl --disable-sspi \ | ||
1337 | --disable-ntlm-wb --disable-ldap --disable-rtsp --disable-dict \ | ||
1338 | --disable-telnet --disable-tftp --disable-pop3 --disable-imap \ | ||
1339 | --disable-smtp --disable-gopher --disable-file --disable-ftp \ | ||
1340 | --disable-smb | ||
1341 | $ make ; sudo make install; cd .. | ||
1342 | @end example | 1409 | @end example |
1343 | 1410 | ||
1411 | For the installation and compilation of libgnurl/gnURL refer to | ||
1412 | the generic installation section, | ||
1413 | @xref{generic source installation - libgnurl}. | ||
1414 | |||
1344 | @node Installing GNUnet from Source2 | 1415 | @node Installing GNUnet from Source2 |
1345 | @subsection Installing GNUnet from Source2 | 1416 | @subsection Installing GNUnet from Source2 |
1346 | 1417 | ||
diff --git a/doc/documentation/gnunet.texi b/doc/documentation/gnunet.texi index 29ee25b96..0489c5df4 100644 --- a/doc/documentation/gnunet.texi +++ b/doc/documentation/gnunet.texi | |||
@@ -151,6 +151,7 @@ GNUnet Installation Handbook | |||
151 | * Pre-installation notes:: | 151 | * Pre-installation notes:: |
152 | * Generic installation instructions:: | 152 | * Generic installation instructions:: |
153 | * Build instructions for Ubuntu 12.04 using Git:: | 153 | * Build instructions for Ubuntu 12.04 using Git:: |
154 | * Build instructions for software builds from source:: | ||
154 | * Build Instructions for Microsoft Windows Platforms:: | 155 | * Build Instructions for Microsoft Windows Platforms:: |
155 | * Build instructions for Debian 7.5:: | 156 | * Build instructions for Debian 7.5:: |
156 | * Installing GNUnet from Git on Ubuntu 14.4:: | 157 | * Installing GNUnet from Git on Ubuntu 14.4:: |