Re: missing gnunetspeaker: gnunet-gtk requires GNUnet

Mateusz Viste <[email protected]> Mon, 24 Aug 2020 10:56:45 +0200
Newsgroups gmane.network.gnunet.general
Message-ID <[email protected]>
Hi Martin,

On 24/08/2020 09:26, Schanzenbach, Martin wrote:
> I wonder why your directory is "lib64"...

This is where 'make -j1 install' put the gnunet libraries. I wasn't 
really surprised since this is an x86_64 system - I was, in fact, kind 
of expecting it this way.

> Maybe try adding a symlink from ~/gnunet/lib to ~/gnunet/lib64.
> That should make configure discover gnunet.

You are correct, this worked a treat! This is so simple I didn't think 
of such work-around... Thank you!

Apparently the configure script of gnunet-gtk expects gnunet libraries 
to be always in a 'lib' subdirectory, which is inconsistent with 'make 
install' behavior of the gnunet package itself. I will prepare a Mantis 
report about this.

BTW, I have to run 'make install' with the -j1 parameter, otherwise it 
fails. This is because the makefile rules doesn't seem to cover all 
internal dependencies right, and my make is parallelized by default (I 
use a MAKEFLAGS env variable). I will report it through Mantis as well.

Anyway, everything builds now, so it's a success. :)
Time to play with gnunet at last. Thanks a ton for your help!

Here below, for archival purpose, is the "recipe" that worked for 
building the gnunet suit on my system:

#####################################################################
# BUILD GNUNET                                                      #
#####################################################################

$ git clone https://gnunet.org/git/gnunet.git
$ cd gnunet
$ ./bootstrap
$ ./configure --prefix=$HOME/gnunet --disable-testing --disable-nls 
--disable-documentation
$ make
$ make -j1 install

#####################################################################
# BUILD GNUNET-GTK                                                  #
#####################################################################

$ git clone https://gnunet.org/git/gnunet-gtk.git
$ cd gnunet-gtk
$ ./bootstrap
$ ln -s $HOME/gnunet/lib64 $HOME/gnunet/lib
$ ./configure --prefix=/home/mateusz/gnunet --disable-nls 
--with-gnunet=/home/mateusz/gnunet/
$ make
$ make -j1 install


Mateusz





>> On 22. Aug 2020, at 14:08, Mateusz Viste <[email protected]> wrote:
>>
>> Hello Martin,
>>
>> Thanks for your input!
>>
>> On 22/08/2020 11:25, Schanzenbach, Martin wrote:
>>> The reason libgnunetspeaker is not installed is because you likely missed dependencies for it when compiling gnunet.
>>
>> I was half expecting it, yes - but looking at the output of the configure script it wasn't really explicit, hence I was in doubt (I even grepped through the configure result looking for anything speaker-related, but with no match). I did spot however these little things being output on stderr:
>>
>> configure: WARNING: libpulse not found
>> configure: WARNING: libopus not found
>> configure: WARNING: libogg not found
>>
>> I installed the headers for these packages and... miracle! The libgnunetspeaker library got built and has been installed :)
>>
>> $ ll /home/mateusz/gnunet/lib64/libgnunetspeaker*
>> -rwxr-xr-x 1 mateusz users  1123 Aug 22 13:36 /home/mateusz/gnunet/lib64/libgnunetspeaker.la
>> lrwxrwxrwx 1 mateusz users    25 Aug 22 13:36 /home/mateusz/gnunet/lib64/libgnunetspeaker.so -> libgnunetspeaker.so.0.0.0
>> lrwxrwxrwx 1 mateusz users    25 Aug 22 13:36 /home/mateusz/gnunet/lib64/libgnunetspeaker.so.0 -> libgnunetspeaker.so.0.0.0
>> -rwxr-xr-x 1 mateusz users 18304 Aug 22 13:36 /home/mateusz/gnunet/lib64/libgnunetspeaker.so.0.0.0
>>
>> gnunetgtk still doesn't pass the configure process, though (still unable to find libgnunetspeaker, even though the file exists now):
>>
>> $ export LD_LIBRARY_PATH=/home/mateusz/gnunet/lib64
>> $ sudo ldconfig
>> $ /configure --prefix=/home/mateusz/gnunet --disable-nls --with-gnunet=/home/mateusz/gnunet/
>> (...)
>> checking gnutls/abstract.h presence... yes
>> checking for gnutls/abstract.h... yes
>> checking for gnutls_pubkey_import in -lgnutls... yes
>> checking for GNUnet core... /home/mateusz/gnunet/
>> checking for GNUnet util library in /home/mateusz/gnunet... checking for gnunet/gnunet_util_lib.h... yes
>> checking for GNUNET_xfree_ in -lgnunetutil... no
>> checking for gnunet/gnunet_conversation_service.h... yes
>> checking for GNUNET_SPEAKER_destroy in -lgnunetspeaker... no
>> configure: error: gnunet-gtk requires GNUnet
>>
>> I imagine this is not really a gnunet problem and might be related to the fact that I am installing the libs in a custom location, so perhaps the linker is unable to find the libs... I will fiddle more with this. Important thing is that the libraries are getting built alright. Thanks for the good pointers!
>>
>> best,
>> Mateusz
>