aboutsummaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
Diffstat (limited to 'README')
-rw-r--r--README102
1 files changed, 56 insertions, 46 deletions
diff --git a/README b/README
index e6ba9c07e..01f9cbd7b 100644
--- a/README
+++ b/README
@@ -6,10 +6,11 @@ ToC
6* ToC 6* ToC
7* What is GNUnet? 7* What is GNUnet?
8* Dependencies 8* Dependencies
9 o direct dependencies 9 o Build tools
10 o test suite dependencies 10 o Dependencies of GNUnet
11 o optional dependencies 11 o Dependencies of optional components/functionality
12 o autotools 12 o Test suite dependencies
13 o Recommended developer tools
13* Notes on setuid 14* Notes on setuid
14* Scope of Operating System support 15* Scope of Operating System support
15* How to install 16* How to install
@@ -56,8 +57,20 @@ The dependencies for building GNUnet will require around 0.74 GiB
56diskspace. GNUnet itself will require 8 - 9.2 MiB depending on 57diskspace. GNUnet itself will require 8 - 9.2 MiB depending on
57configuration. 58configuration.
58 59
59These are the direct dependencies for running GNUnet: 60Build tools for compiling GNUnet from source:
60~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 61~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
62
63- gcc or clang
64- autoconf >= 2.59 (building from git)
65- automake >= 1.11.1 (building from git)
66- libtool >= 2.2
67- makeinfo >= 4.8
68- make[*3]
69- pkgconf or pkg-config
70- Texinfo >= 5.2 [*1]
71
72Direct dependencies of GNUnet:
73~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
61 74
62- Bash (for some scripts) 75- Bash (for some scripts)
63- gettext 76- gettext
@@ -71,35 +84,57 @@ These are the direct dependencies for running GNUnet:
71- libgcrypt >= 1.6 84- libgcrypt >= 1.6
72- libunistring >= 0.9.2 85- libunistring >= 0.9.2
73- libidn: 86- libidn:
74 * libidn2 (prefered) 87 * libidn2 (preferred)
75 or 88 or
76 * libidn >= 1.0 89 * libidn >= 1.0
77- libmicrohttpd >= 0.9.63 90- libmicrohttpd >= 0.9.63
78- libjansson 91- libjansson
79- makeinfo >= 4.8
80- make[*3]
81- nss (certutil binary, for 92- nss (certutil binary, for
82 gnunet-gns-proxy-setup-ca) 93 gnunet-gns-proxy-setup-ca)
83- openssl >= 1.0 (binary, used to generate 94- openssl >= 1.0 (binary, used to generate
84 X.509 certificate 95 X.509 certificate
85 for gnunet-gns-proxy-setup-ca) 96 for gnunet-gns-proxy-setup-ca)
86- pkgconf or pkg-config
87- A Posix shell (for some scripts)
88- Texinfo >= 5.2 [*1]
89- libltdl >= 2.2 (part of GNU libtool) 97- libltdl >= 2.2 (part of GNU libtool)
90- 1 or more databases: 98- sqlite >= 3.8 (default database, required)
91 * sqlite >= 3.8 (default database, required)
92 and/or
93 * mysql >= 5.1 (alternative to sqlite)
94 and/or
95 * postgres >= 9.5 (alternative to sqlite)
96- which (contrib/apparmor(?), gnunet-bugreport, 99- which (contrib/apparmor(?), gnunet-bugreport,
97 and possibly more) 100 and possibly more)
98- zlib 101- zlib
99- libsodium >= 1.0.17 (for elliptic curve cryptography) 102- libsodium >= 1.0.17 (for elliptic curve cryptography)
103- certtool (gnutls or openssl) (certtool binary (for convenient
104 installation of GNS proxy))
100 105
101These are the dependencies for GNUnet's testsuite: 106Dependencies of optional components/functionality:
102~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 107~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
108- Database plugins (alternatives to sqlite):
109 * mysql >= 5.1
110 * postgres >= 9.5
111- Transport plugins:
112 * bluez (bluetooth transport)
113- Conversation service:
114 * libopus >= 1.0.1
115 * libpulse >= 2.0
116 * libogg >= 1.3.0
117- File-sharing metadata (highly recommended[*5]):
118 * libextractor >= 0.6.1
119- NAT uPnP support:
120 * miniupnpc
121- gnunet-qr (Read/write GNUnet URIs from/to QR codes):
122 * libzbar >= 0.10
123- gnunet-bcd (GNS business card generator):
124 * TeX Live >= 2012 (for gnunet-bcd[*])
125- Documentation:
126 * TeX Live >= 2012 (for gnunet-bcd[*])
127 * texi2mdoc (for automatic mdoc generation [*2], not
128 the texi2mdoc script distributed with
129 autogen but the texi2mdoc C application)
130- Attribute-Based Encryption (experimental):
131 * libpbc >= 0.5.14
132 * libgabe
133
134
135
136Additional dependencies to run the GNUnet testsuite:
137~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
103 138
104- Bash (for some tests[*4]) 139- Bash (for some tests[*4])
105- A Posix Shell (for some tests) 140- A Posix Shell (for some tests)
@@ -114,41 +149,16 @@ These are the dependencies for GNUnet's testsuite:
114 - which 149 - which
115 150
116 151
117These are the optional dependencies: 152Recommended software for developer tools:
118~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 153~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
119 154
120- awk (for linting tests) 155- awk (for linting tests)
121- Bash (for Docker and Vagrant) 156- Bash (for Docker and Vagrant)
122- bluez (for bluetooth support)
123- grof (for linting of man pages) 157- grof (for linting of man pages)
124- libextractor >= 0.6.1 (highly recommended[*5])
125- libopus >= 1.0.1 (for conversation tool)
126- libpulse >= 2.0 (for conversation tool)
127- libogg >= 1.3.0 (for conversation tool)
128- libnss (certtool binary (for convenient
129 installation of GNS proxy))
130- libzbar >= 0.10 (for gnunet-qr)
131- libpbc >= 0.5.14 (for Attribute-Based Encryption and
132 Identity Provider functionality)
133- libgabe (for Attribute-Based Encryption and
134 Identity Provider functionality, from
135 https://github.com/schanzen/libgabe)
136- mandoc (for linting of man pages, generation of 158- mandoc (for linting of man pages, generation of
137 html output of man pages (not part of 159 html output of man pages (not part of
138 the regular build)) 160 the regular build))
139- miniupnpc
140- perl5 (for some utilities) 161- perl5 (for some utilities)
141- TeX Live >= 2012 (for gnunet-bcd[*])
142- texi2mdoc (for automatic mdoc generation [*2], not
143 the texi2mdoc script distributed with
144 autogen but the texi2mdoc C application)
145
146Recommended autotools for compiling the Git version are:
147~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
148
149- autoconf >= 2.59
150- automake >= 1.11.1
151- libtool >= 2.2
152 162
153 163
154[*] Mandatory for compiling the info output of the documentation, 164[*] Mandatory for compiling the info output of the documentation,