[This is an IPv6-only e-mail address, if you have any need to
respond to this and send me a copy but do not have IPv6-
capability, strip out the obvious part of the address, okaybye]
Moin moin!
The newer versions of lame, retrieved from the CVS repository, fail
to build (link) under the NetBSD 1.6-current that I'm running. The
problem seems to be in libtool/ltconfig.
After giving commands `./configure' and `make', the linking stage
in libmp3lame/i386 bombs with an error that I didn't bother to copy,
concerning something like libvorbis.lo being an unrecognized command,
in a `/usr/bin/ld -Bshareable ...' line.
Eventually one realizes that `-Bshareable' isn't even supported by
this `ld'.
If one looks in the supplied (dated 2000) `ltconfig' file and searches
for `netbsd', one sees three instances of it. Looking at all of them,
one seems to be inconsistent with the others. I've looked at all the
copies of `ltconfig' that I could find in the source packages I've
built for NetBSD to see if I could find a more recent clue, but all
the ones I saw looked similar (or older, with no ELF support)...
In any case, what I needed to do to the supplied `ltconfig' to get
it to build with ``i386-unknown-netbsdelf1.6A'' is to swap around the
result of the ELF check, to make it use the `-shared' line rather
than the `a.out' line...
--- /var/tmp/lame/ltconfig-unhacked Sun Oct 22 14:06:32 2000
+++ /var/tmp/lame/ltconfig Fri Jun 7 10:31:34 2002
@@ -1202,11 +1202,11 @@
netbsd*)
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname
-o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname
$wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
archive_cmds='$LD -Bshareable $libobjs $deplibs $linkopts -o $lib'
# can we support soname and/or expsyms with a.out? -oliva
+ else
+ archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname
+-o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname
+$wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
fi
;;
After this, re-running `make' causes everything to be built properly
on my system, and I become unbearably happy.
I don't know if this is the right fix -- if the logic of the netbsd*)
cases is backwards (someone with more compiler knowledge than I have
would have to say), or if the test simply is outdated for NetBSD-current
but may be correct for earlier ELF NetBSDen, and needs to be updated,
or if there's a more correct ltconfig out there... so please don't
blindly apply the above patch, but rather, do whatever is needed to
fix it properly for other NetBSD users.
(Actually, a g00gle search turned up someone else who seemed to have
found the same thing, so...)
thanks!
barry bouwsma
_______________________________________________
mp3encoder mailing list
[EMAIL PROTECTED]
http://minnie.tuhs.org/mailman/listinfo/mp3encoder