On 2020-08-29 19:51, Valery Ushakov wrote: > > 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
Oh, on BSD/OS 2+ the default libraries used by standard binaries in the base system are in a special compiled format under /shlib. The /shlib libraries are not in the standard archive format and only get loaded under the /shlib path or a chroot shell under NetBSD (otherwise the binaries do not work). Those libraries do not get included in the runtime path search when they are explicitly added to the path using ldconfig and ld.so.conf. Is there a workaround I did not find that uses ld.so? For BSD/386 (BSD/OS) 1.x, you could add the library paths to /emul/aout/ etc/ld.so.conf, so that running ldconfig would add the entries to /var/run/ld.so.hints, but the standard binaries in base do not require the library paths to run. The library format change is listed in the History section of the manpage. I could also add a note in the description that ldconfig/ld.so.conf do not work for BSD/OS 2-3 binaries. Thanks, Dan