After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 161153 - compilation failure in the howl module
compilation failure in the howl module
Status: RESOLVED FIXED
Product: jhbuild
Classification: Infrastructure
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: James Henstridge
Jhbuild QA
Depends on:
Blocks:
 
 
Reported: 2004-12-13 11:46 UTC by Christophe Fergeau
Modified: 2005-06-20 07:24 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Christophe Fergeau 2004-12-13 11:46:34 UTC
It's probably not the right place to report this bug, but since howl was added
to the gnoem 2.10 module set, I can't successfully complete a jhbuild build:

make[3]: Entering directory `/usr/src/gnome2A/howl-0.9.8/src/autoipd'
/bin/sh ../../libtool --mode=link gcc  -DHOWL_KERNEL -static  -o autoipd 
autoip.o linux_autoip.lo posix_main.lo ../../src/lib/howl/libhowl.la -lpthread
gcc -DHOWL_KERNEL -o autoipd autoip.o linux_autoip.o posix_main.o 
../../src/lib/howl/.libs/libhowl.so -lpthread  -Wl,--rpath
-Wl,/usr/src/gnome2A/howl-0.9.8/src/lib/howl/.libs -Wl,--rpath -Wl,/opt/gnome29/lib
gcc: linux_autoip.o: No such file or directory
gcc: posix_main.o: No such file or directory
make[3]: *** [autoipd] Erreur 1
make[3]: Leaving directory `/usr/src/gnome2A/howl-0.9.8/src/autoipd'
make[2]: *** [all-recursive] Erreur 1
make[2]: Leaving directory `/usr/src/gnome2A/howl-0.9.8/src/autoipd'
make[1]: *** [all-recursive] Erreur 1
make[1]: Leaving directory `/usr/src/gnome2A/howl-0.9.8/src'
make: *** [all-recursive] Erreur 1

This is on a debian sid system, I haven't taken time to try to figure out what
could be wrong.
Comment 1 James Henstridge 2004-12-13 18:08:27 UTC
This problem turned up on Luis's tinderbox too, but didn't turn up when I was
playing round with howl.  I think I've worked out what the problem is now.

Assuming your jhbuild config is based on one of the samples without too many
modifications, then "--disable-static" was passed to the configure script.  Now
in src/autoipd/Makefile.am, there is the following:
  AM_LDFLAGS = -static

So it attempts to link with the non-PIC .o files, rather than the PIC .lo files.
 However, since --disable-static was used the .o files don't exist.

I'm not sure why howl is insisting on building its utilities static though ...
Comment 2 Luis Villa 2004-12-13 20:22:10 UTC
Hrm, so, James: is there a way within jhbuild to override the global
--disable-static on a per-module basis?
Comment 3 James Henstridge 2004-12-13 20:31:41 UTC
this should work:

  module_autogenargs['howl'] = 'args I want to pass to configure'

Or even:
  module_autogenargs['howl'] = autogenargs.replace('--disable-static', '')

It would be good if Howl didn't need this hack though.
Comment 4 Christophe Fergeau 2004-12-13 22:08:39 UTC
Confirming that it builds successfully with module_autogenargs['howl'] =
autogenargs.replace('--disable-static', '') after a make clean, thanks for the tip.
Comment 5 Luis Villa 2004-12-13 22:12:31 UTC
Well, yes, I agree, and I'll send an email to howl-users, I guess. In the
meantime I just wanted to get tinderbox back up and running, returning it to
it's regularly scheduled nautilus-media warnings.;)
Comment 6 Thierry Moisan 2005-02-13 16:03:24 UTC
I got his too and to solve it I went to shell and did :

cd src/autoipd
ln -s linux_autoip.lo linux_autoip.o
ln -s posix_main.lo posix_main.o

I hope this can helps.
Comment 7 Andrew Burton 2005-02-14 11:22:16 UTC
I, also, got this. I modified the modulesets/gnome-2.10.modules file to have
this reference to howl:

  <tarball id="howl" version="0.9.10">
    <source href="http://www.porchdogsoft.com/download/howl-0.9.10.tar.gz"
            size="541004" md5sum="444f2c1fe8eaf16d6822c01bfafba99b" />
  </tarball>
Comment 8 James Henstridge 2005-02-25 13:08:38 UTC
I just updated gnome-2.10.modules to use 0.9.10, and it looks like we have a
different problem with --disable-static.

The explicit "AM_LDFLAGS = -static" bits are gone, but things still fail to
build in the autoipd directory.

On Linux, the configure script defines the following (rewrapped for clarrity):
  AUTOIPD_EXTRA_OBJECTS='$(top_builddir)/src/autoipd/linux_autoip.lo
                         $(top_builddir)/src/autoipd/posix_main.lo'

Now in the src/autoipd/ Makefile.am, we have the following:
  LDADD = $(AUTOIPD_EXTRA_OBJECTS) $(top_builddir)/src/lib/howl/libhowl.la \
          $(PLATFORM_LIBS)
  ...
  autoipd_DEPENDENCIES = linux_autoip.o posix_main.o

So linux_autoip.o and posix_main.o get built before trying to link autoipd. 
However, when linking it looks for linux_autoip.lo and posix_main.lo.  However,
the .lo files aren't listed as dependencies, so don't get built.  If I change to
the directory and run "make linux_autoip.lo posix_main.lo", things build okay.

I believe the correct fix is to get AUTOIPD_EXTRA_OBJECTS to list the .o files
instead of .lo files.
Comment 9 Luis Villa 2005-06-13 20:06:23 UTC
Blah. Given the licensing issues, can we just drop howl, at least from the
default  vfs deps?
Comment 10 James Henstridge 2005-06-20 07:24:27 UTC
Fixed in CVS.  I added the above as a patch, and updated to howl-1.0.0.