Subject: Re: help on porting...
To: Joel CARNAT <joel_carnat@yahoo.fr>
From: Martin Weber <Ephaeton@gmx.net>
List: tech-pkg
Date: 06/10/2002 19:07:15
On Mon, Jun 10, 2002 at 06:30:53PM +0200, Joel CARNAT wrote:
> Hi,
>
> I'm trying to get GKrellm volume's plugin work on NetBSD...
> I've succeeded compiling it !
> But on loading, I get:
> ==========
> /usr/local/lib/gkrellm/plugins/volume.so
> Error: /usr/local/lib/gkrellm/plugins/volume.so: Undefined PLT symbol
> "_oss_ioctl" (reloc type = 7, symnum = 88)
Welcome to NetBSD and its ELF implementation :)
> ==========
> I've already checked various audio packages to see common things but I
> didn't notice much things apart from the "#include <soundcard.h>...
>
> Are there some "easy" thing that always must be done to port from
> Linux->NetBSD ?
Yeah, adjust the rpaths. Check this out:
http://www.netbsd.org/Documentation/elf.html
http://www.netbsd.org/Documentation/software/compiling.html
> What means this error message (I mean the 'reloc' and 'symnum' thing) ?
Don't ask me about the reloc(ation) type's meaning, but symnum I suppose
is symbol number. Basically it cannot load symbols (variables, functions ..)
from a shared library. In your place, it cannot successfully load the libraries
the library itself (i.e. volume.so) is depending on. The above links should
help you to sort that out.
>
> Note: I've only already coded general things... not hardware related
> things so don't be afraid to be very explicit ;)
The above pointers plus maybe a man gcc or ld and you'll be fine :)
>
> Thanks for answers,
> Jo
hth, -martin