static binaries, jails and compat x
julian at elischer.org
Wed Aug 3 00:02:25 GMT 2005
Doug Ambrisko wrote:
>Julian Elischer writes:
>| Now that we have dynamic binaries everywhere I'm discovering all those
>| where this breaks..
>| FreeBSD 5 or 6 machine. (needed because freeBSD 4 can't run on the new
>| freeBSD 4 jail to run a legacy app.
>| ps top and netstat (and friends) don't work (not surprisingly)
>| ps I can get from /rescue
>| but top and netstat are only available in dynamic form.
>Hey, it gets harder when you run FreeBSD 4.X on a FreeBSD amd64 machine and
>have mixed i386/amd64 libs :-( I copy over the amd64 versions of ps etc.
>and had to copy over some libs that conflict in names. In-order to get
>around placement issues I binary edit them on the fly via sed:
> sed -e 's/libkvm/libhvm/g' -e 's/libexec/libhxec/g' -e 's/libsbuf/libhbuf/g'
>etc. One thing I just found out was:
>and hacked libc's getosreldate & uname to use that stuff. I LD_PRELOAD
>my lib of these then pkg_add -r, libtool etc. then just work and think
>the are really running on FreeBSD 4.X. I wish if LD_PRELOAD lib's
>didn't exist then it would just ignore it versus failing to run. I've made
>that change locally. That way I can chroot in chroot without needing
>the shims when not needed.
>It's a mess. Do you think the libc stuff should have the same type
>of over-rides as the uname binary. I think so.
I'd like to see the filename code be able to use
/usr/compat/FreeBSD4/... like it does for
Linux binaries at the moment. Can we brandelf FreeBSD 6 binaries
differently so that
they can be told apart from FfreeBSD 4 binaries by the kernel?
More information about the freebsd-current