
On Tuesday 31 May 2011 12:31:36, Simon Marlow wrote:
The ticket has low priority, but if anybody has an idea how to check whether libbfd depends on libz in the configure script, I'd appreciate it.
Could you install a shared version of libbfd?
I have one, $ locate libbfd /home/dafis/.deps/libbfd.Plo /usr/lib/libbfd-2.20.0.20100122-6.so /usr/lib/libbfd.a /usr/lib/libbfd.la The problem is, as far as I can tell, that a) libbfd.a is picked up instead of the .so in the first place, and b) that both depend on libz: $ ldd /usr/lib/libbfd-2.20.0.20100122-6.so linux-gate.so.1 => (0xffffe000) libz.so.1 => /lib/libz.so.1 (0xb743e000) libc.so.6 => /lib/libc.so.6 (0xb72d3000) /lib/ld-linux.so.2 (0xb76fd000) There's # Libraries that this one depends upon. dependency_libs=' -lz' in libbfd.la, and the inflate* symbols are undefined in libbfd*.
Failing that, the easiest thing to do would be to make a test that compiles a program depending on libbfd and if it fails to link, just disable HAVE_LIBBFD (it's no great loss).
I'm far from an expert, but as far as I can see, there is already such a test, in configure.ac: AC_CHECK_LIB(bfd, bfd_init) with a test using bfd_init in configure. Unfortunately, that doesn't detect if libz is needed without using some functions depending on it. If I had the slightest idea how to make it detect the dependency on libz, I happily would, but I've not yet found any introduction to shell scripting or using autotools accessible to a complete beginner.
Cheers, Simon