[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Help-gnunet] From IRC chat: ng0 asked me to post problems with the git
[Help-gnunet] From IRC chat: ng0 asked me to post problems with the git docs.
Sat, 06 Oct 2018 07:08:27 -0700
I was asked by ng0 on IRC to write up the difficulties I was having with making
sense of gnunet installation. I've written up my confusions (to this point)
Please take this as constructive input on the docs from someone who is a user,
but not completely new to things. This is my third attempt to make sense of
any of the extant install information. It appears to me that there are
basically 3 places to go for that information. On my two previous attempts,
which were subsequent to installing Ubuntu 16.04, I found my way, sensibly, to
the web page:
These are not only old but conflict. Perhaps you should get rid of them
altogether? I tried to make sense of putting Ubuntu 14.04 and Debian 8 docs
together to work with Ubuntu 16.04 (a combination of Debian 9 + unstable), but
gave up. Perhaps it's worse with 18.04. I did glean a few things which may be
relevant to clarify in newer docs:
(1) There is a comment on libmicrohttpd at the bottom of
https://gnunet.org/installing-gnunet-git-ubuntu-144. Perhaps this still applies
to new Ubuntus? See the issue below with that library being too old in Ubuntu
16.04. (I am now told by amadus in IRC that it is also too old in Debian
(2) Notice that it is only in the Debian 8 install instructions
(https://gnunet.org/build-instructions-debian-8) that we are told that we need
the packages libogg-dev, libpulse-dev, libopus-dev, & some others. They are
not mentioned in the Ubuntu 14.04 install. These packages become optional for
chat in the 0.11.0 prerelease README. I'm not clear if they are needed for the
chat option in ubuntu 16.04.
(3) The gnurl web page (https://gnunet.org/gnurl) I had to find via a search
engine because those instructions only have links to specific tar balls, is not
up to date with the git (https://git.taler.net/gnurl.git/). A tarball link
looks like: https://gnunet.org/sites/default/files/gnurl-7.35.0.tar.bz2, which
provides no way to get to that page.
On my third attempt, I found my way to IRC and was told to either install from
the git repo or from the 0.11.0 preinstall. Starting from git, I went to the
README, which says:
(a) "These are the direct dependencies for running GNUnet:" This appears
twice. Lists following this quote conflict.
(b) "Generic installation instructions are in the INSTALL file in this
directory." That file does not exist
(c) "IMPORTANT: You can read further notes about compilation from source in the
'doc/FILENAME' document" That file does not exist
(d) For someone who is not used to installing from source, it was for some time
not clear that all packages should be the "-dev" form, /except/ for the one
that is noted "binary".
I then kept searching and did find a couple of other files:
These are in texinfo format and difficult to interpret prior to compilation,
which is of course the case when one is trying to figure out how to do the
install. They also appeared to contradict the README, which was in any case
self contradictory ((1)(a), above).
Finally, I decided to go to the pre-release. The README there was much clearer
and did not refer to non-existent files. My difficulty at that point became
Ubuntu 16.04's libmicrohttpd-dev (also apparently Debian Stretch) and
libpulse-dev being versions older than those called for. I came to IRC to ask
about what to do to handle those two old packages. (No answer yet.) If I have
to install from source, some note to help on doing that and a note how to avoid
damaging our systems, could be useful.
This led to sva pointing to his new Stretch install instructions
Here I found many of the required dependencies (based on the pre-release
README) missing on a supposedly working install: libmicrohttpd-dev, libgnurl,
libgnutls-dev, openssl, libltdl-dev, texinfo. Also, he had
libcurl4-gnutls-dev. Is that a replacement for libgnurl? He has no optional
packages either, but included a few not mentioned in that README: zlib1g-dev
libjansson-dev autopoint miniupnpc, which of course makes me curios what these
I've been back 3 times. I /really/ want to try this. I do think this project
shows a particular fragmentation of useful information, leaving at least one
reasonably competent person, even if not a developer, throwing up their hands.