ports/102474: linux_base-fc-4_8 appears broken,
does not allow to run Linux binaries
Boris Samorodov
bsam at ipt.ru
Fri Aug 25 10:30:27 UTC 2006
The following reply was made to PR ports/102474; it has been noted by GNATS.
From: Boris Samorodov <bsam at ipt.ru>
To: Alexander Leidinger <Alexander at Leidinger.net>
Cc: Markus Hoenicka <markus.hoenicka at mhoenicka.de>,
freebsd-gnats-submit at freebsd.org, freebsd-emulation at freebsd.org
Subject: Re: ports/102474: linux_base-fc-4_8 appears broken, does not allow to run Linux binaries
Date: Fri, 25 Aug 2006 14:23:47 +0400
On Fri, 25 Aug 2006 08:23:20 +0200 Alexander Leidinger wrote:
> Quoting Boris Samorodov <bsam at ipt.ru> (from Fri, 25 Aug 2006 02:28:36 +0400):
> > On Thu, 24 Aug 2006 23:48:08 +0200 Markus Hoenicka wrote:
> >> Boris Samorodov writes:
> >
> >> > Can you give me a link to ktrace.out for
> >> > "ktrace -i /compat/linux/usr/bin/ldd /compat/linux/sbin/ldconfig"?
> >
> >> Yes, please have a look at:
> >
> >> http://refdb.sourceforge.net/stuff/ldd/ktrace.out
> >
> > Aha, /compat/linux/usr/bin/ldd is a script. Can't say for sure should
> > it work or not but something strange does exist:
> > -----
> > 24546 ktrace RET ktrace 0
> > 24546 ktrace CALL execve(0xbfbfe85e,0xbfbfe75c,0xbfbfe768)
> > 24546 ktrace NAMI "/compat/linux/usr/bin/ldd"
> > 24546 ktrace NAMI "/bin/sh"
> > 24546 ktrace NAMI "/libexec/ld-elf.so.1"
> > 24546 sh RET execve 0
> > -----
> >
> > Alexander, can you comment on this behaviour? Thanks!
> The kernel contains code to detect if a linux program is a script and
> contains "#!" at the beginning. If it detects this, it tries to start
> the linux version of the interpreter. At least it should do that. If
> the above isn't a cut-down version of the ktrace, and if the linux ldd
It is a cut-down version of ktrace. I expected that a linux shell
should be execed, but not a native one. And later this shell is trying
to find /lib/ld-linux.so.2 and boils out!
> does contain "#!" as the first two characters of the file (I can't
> check ATM), then there's something wrong here.
Yep:
-----
# uname -a
FreeBSD bsam.ru 6.1-STABLE FreeBSD 6.1-STABLE #0: Sat Aug 19 00:13:01 MSD 2006 bsam at bsam.ru:/usr/obj/usr/src/sys/GENERIC i386
# head -1 /compat/linux/usr/bin/ldd
#! /bin/sh
-----
> Regarding the lib problem in the PR: FreeBSD 6.x and fc4 contain a
> libc.so.6. So the order of the ld path (/compat/linux/etc/ld.so.conf
> or how it is spelled) may matter. I don't have a 6.x system to test
> this, so someone has to play around with it and report here (don't
> forget to rerun the linux ldconfig with the '-R /compat/linux' option
> after each change). If this doesn't solve the problem, I need to see
> the complete ktrace of a failing program which tries to link with
> libc.so.6.
The lib problem is already fixed (non-standard file /usr/lib/libc.so.6
existed at the submitter's machine). Thanks for your help.
WBR
--
Boris Samorodov (bsam)
Research Engineer, http://www.ipt.ru Telephone & Internet SP
FreeBSD committer, http://www.FreeBSD.org The Power To Serve
More information about the freebsd-emulation
mailing list