path: root/doc/documentation
diff options
authorSchanzenbach, Martin <>2018-05-18 22:05:18 +0200
committerSchanzenbach, Martin <>2018-05-18 22:05:18 +0200
commit5877f329f7f868c5609271c099322d5ef5df15fa (patch)
tree51dc6351f25a33fe1454642e919ed8c8f88d347d /doc/documentation
parent81b21482d14ea93df96c7f0709fa31a1939360ad (diff)
-add basic macOS installation instructions
Diffstat (limited to 'doc/documentation')
1 files changed, 54 insertions, 0 deletions
diff --git a/doc/documentation/chapters/installation.texi b/doc/documentation/chapters/installation.texi
index f2042033e..665f980be 100644
--- a/doc/documentation/chapters/installation.texi
+++ b/doc/documentation/chapters/installation.texi
@@ -19,6 +19,7 @@ it in the form of new chapters or insightful comments.
* Build instructions for Debian 7.5::
* Installing GNUnet from Git on Ubuntu 14.4::
* Build instructions for Debian 8::
+* Build instructions for macOS::
@c * Build instructions for OpenBSD 6.2::
* Outdated build instructions for previous revisions::
@c * Portable GNUnet::
@@ -1472,6 +1473,59 @@ with the default Sqlite database. Sqlite is usually fine for most
applications, but MySQL can offer better performance and Postgres better
+@node Build instructions for macOS
+@section Build instructions for macOS
+@c FIXME: I -> we
+These are the installation guidelines for macOS.
+They were tested on macOS High Sierra.
+* Installing dependencies::
+* Compile from Source::
+@end menu
+@node Installing dependencies
+@subsection Installing dependencies
+First, install XCode in the newest version.
+Install Homebrew ( and then install the dependencies listed above.
+If a dependency does not exists in brew, you need to compile it from source.
+# brew install <dependency>
+@end example
+@node Compile from Source
+@subsection Compile from Source
+Before you start building GNUnet, you need to setup your environment.
+This means that you have to make sure the proper tools are used in the build process.
+For example, after installing texinfo you need to make sure the new texinfo is actually used:
+# echo 'export PATH="/usr/local/opt/texinfo/bin:$PATH"' >> ~/.bash_profile
+@end example
+Note: brew tells you the appropriate command when executing
+# brew info texinfo
+@end example
+This may also be necessary for the gettext package.
+Before you start compiling, you need to make sure gcc is used and not the clang compile of your macOS system.
+On my system, gcc was actually ``gcc-7'' and gcc pointed to the clang compiler.
+# export CC=gcc-7
+@end example
+After this the standard compile instructions apply.
@c @node Build instructions for OpenBSD 6.2
@c @section Build instructions for OpenBSD 6.2