Re: New compat_bsdos.8 Manpage

Valery Ushakov <[email protected]>
Newsgroups gmane.os.netbsd.ports.x86-64,gmane.os.netbsd.documentation,gmane.os.netbsd.ports.i386
Message-ID <[email protected]>
On Sat, Aug 29, 2020 at 19:25:15 -0400, Dan Plassche wrote:

> The magic setup is a bit more varied though.  For a.out binaries,
> /emul/$foo lookups happen for SunOS,

This is done by the kernel.


> but NetBSD a.out libraries are searched under /emul/aout for
> COMPAT_09 through COMPAT_14.

This, OTOH, is done by a.out ld.so and ldconfig - and doesn't seem to
be documented at all except for a note in passing at the end of
compat_netbsd32(8).

 
> > So ideally the wording should explain that bsdos does NOT have a magic
> > /emul/$foo root like other emulations as it's COMPAT_NOMID, not
> > COMPAT_BSDOS, and the binaries run under COMPAT_NOMID get their files
> > looked up in the normal root namespace, so you have to have a real
> > /shlib in you file system, whatever that is, a directory or a symlink
> > to elsewhere.  /emul/bsdos/shlib might be not that bad a choice for
> > $elsewhere, but then the man page has to be super-clear that this is
> > just to follow the convention and there's no magic in that choice, as
> > /emul prefix might imply.
> 
> Okay, you make a good point that the library lookup path needs to be
> clear to the user.  I'll revise the wording when sending the next
> diff to explain that there's no magic path.

I'd say, don't mention chroot.  Instead it would be nice to document a
working setup that puts the least amount of stuff into the main
namespace.  Now, I haven't even RTFS'ed this, but if I'd have to go
about it I'd check if the following works:

i386:  /usr/libexec/ld.so
amd64: /emul/netbsd32/usr/libexec/ld.so  
       /emul/aout/etc/ld.so.conf
       /emul/aout/shlib

I guess on amd64 you can also use

       /emul/netbsd32/emul/aout/etc/ld.so.conf
       /emul/netbsd32/emul/aout/shlib

but that's probably overly pedantic :)

-uwe
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.