[Glibc-bsd-devel] GNU/kFreeBSD status
Nathan Hawkins
utsl@quic.net
Sat, 24 Jan 2004 21:36:49 -0500
On Sat, Jan 24, 2004 at 09:35:33PM +0100, Robert Millan wrote:
>
> Hi!
>
> I've been hacking a bit on GNU/kFreeBSD lately and want to summarise the
> recent progress.
>
> - binutils works again (with ld.so hack, see ldso-hack package)
Was this recent breakage, or something new I wasn't aware of?
> - i've re-done the gcc port from scratch by using gnu/linux config files as
> a base instead of *bsd ones. it's much better integrated now (we have
> shared libraries, gnu-like crt*, etc). This applies to gcc-3.2 and gcc-3.3,
> but not to gcc-3.4 yet (I'll merge the patches in 3.4 upstream soon).
>
> - Glibc builds again!! I disabled linuxthreads, and changed soname to 0.1.
> we're going to use libpth to provide pthreads untill we have a definitive
> solution that can be merged in Glibc. People building stuff for
> gnu/kfreebsd (sanvila!) should install libc0.1-dev package and start
> linking for libc0.1.
Changing the soname breaks everything. Please don't do that unless it's
_really_ necessary.
What was wrong with linuxthreads? It's not great, but it seems to work.
> Jeff Bailey is preparing a glibc package that builds on i386-gnu. When
> it's ready, i plan to update the patchset and produce a working glibc
> with recent sources. Then we can start merging the stuff in upstream.
>
> Known Glibc bugs:
> - sbrk() fails in some/all situations. This breaks bash and possibly
> is the reason for gcc and ld diing when put under heavy load. I'm
> having a go at this currently.
Hmm. Haven't seen this at all. Is this specific to the new glibc build
you're doing, or the old one?
> - the resolver is probably broken. I didn't bother to try it, even.
> i'll have a look when the other stuff with more priority is fixed
> (actualy, perhaps the bug disappears when updating to recent glibc)
I'd very much like to get this one fixed. I've been busy setting up a
server based on regular FreeBSD. I'd have been happier if I could have
used Debian FreeBSD, but a mail server with a broken resolver is pretty
useless...
> - ld.so is built as an executable (see sysdeps/[...]/kfreebsd/Makefile)
> but this breaks gnu ld. We'll have to discuss the correct solution with
> glibc and binutils maintainers.
I'm not sure what you mean here. Do you mean ldd? IIRC, on Linux, ld.so
is a shared object, but FreeBSD refuses to execute one. The ldd script
executes ld.so with the trace feature, and that fails to work. I think
the problem was solved by linking it as a normal ELF executable.
I'm not aware of any issues with ld.
---Nathan