[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ld.so / ld.so.1 in libio build of glibc

From: Neal H Walfield
Subject: Re: ld.so / ld.so.1 in libio build of glibc
Date: Fri, 07 Dec 2001 12:01:06 +0100
User-agent: Gnus/5.090004 (Oort Gnus v0.04) Emacs/21.1

> Heya, I'm playing with my libio built glibc.  I'm trying to work in a
> chroot jail for testing (subhurd not really working, I think I just
> need a tutor this weekend on IRC to help me step through it).

Let me venture a guess: you are attempting to use a subhurd with a
libio based glibc while your parent Hurd is using a stdio based glibc.
And furthermore (and more to the point), you are using the loader from
the parent Hurd to load subhurd's exec (take a look at your
servers.boot file and see what the path to the loader is -- remember
this path will be looked up by the boot program in the scope of the
_parent_ Hurd).

If my hunch is correct, the loader being used to run the exec server
is the one from the parent Hurd which will be expecting a certain set
of versioned symbols.  Symbols, which, for obvious reasons, will not
be available in the subhurd's libc.  The libc that the loader will
find because, unlike boot, it is looking for the shared objects on the
subhurd's partition -- not on the parent Hurd's.  Wof.  Got that?

The work around for this is simple: use the loader should only be used
for the libc that it was build with, i.e. use the loader on the parent
Hurd with the parent Hurd's libc and use the loader on the subhurd
with the subhurd's libc.  So, how to use the correct loader.  Not so
simple: boot cannot load anything off of the subhurd's file system:
the file system is not yet mounted and it does not (and should not)
know how to read file systems.  So, what you will need to do is copy
loader onto the parent Hurd's partition and change your servers.boot
file for the subhurd to use it.  Important note: do this _every time_
you install a new libc.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]