From: Edward Peschko <esp5@pge.com>
To: Mike Frysinger <vapier@gentoo.org>
Cc: gcc@gcc.gnu.org, binutils@sources.redhat.com,
linux-kernel@vger.kernel.org, libc-alpha@sources.redhat.com
Subject: Re: forestalling GNU incompatibility - proposal for binary relative dynamic linking
Date: Mon, 24 Jan 2005 15:12:44 -0800 [thread overview]
Message-ID: <20050124231244.GB19422@venus> (raw)
In-Reply-To: <200501241808.52092.vapier@gentoo.org>
On Mon, Jan 24, 2005 at 06:08:52PM -0500, Mike Frysinger wrote:
> On Monday 24 January 2005 05:24 pm, Edward Peschko wrote:
> > After spending *two weeks* on various ways of building glibc,
> > I'm convinced that the gnu/linux toolchain is in great danger of
> > losing interoperability.
>
> sounds like what you want is already being tackled by OSDL and their Binary
> Regression Testing group ...
> http://groups.osdl.org/apps/group_public/workgroup.php?wg_abbrev=binary_sig
> http://www.osdl.org/docs/isv_issues_and_binary_testing.pdf
> -mike
well of course the osdl is going to focus on this, but they need tools
and functionality to do it correctly..
In particular, the statement 'Vendor lock-in (at any level) is not
desirable' is false - there *is* vendor lock-in, and the suggestion
of relative pathing for LD_LIBRARY_PATH is just one way to migrate
back to doing things the right way.
Distributions are basically hoist by their own petard - they need to
support old legacy executables, which have nonstandard glibc's. And since
they need to support legacy executables in the past, they need
to support them in the future.
What I'd envision is that the distributions split basically into two:
executables using the old style glibc/libraries, and executables using the
new, standard glibcs. There would be two paths,
/usr/bin
and
/usr/standard/bin
The first directory would contain old executables which haven't been ported to
the standard glibc. The second would contain executables that have. The relative
pathing in LD_LIBRARY_PATH would insure that each tree used the correct libraries.
In the process of making /usr/standard/bin, linux vendors would need
to make their rpms both path-neutral and build clean. However, they would
*not* need to hold up their release process until everything is ported -
they could pick and choose which applications were the most important to
port. Ultimately, /usr/standard/bin would go away, and be moved back to
/usr/bin, and perhaps the cycle could begin again, with upgrades going into
a new /usr/standard/bin.
Ed
next prev parent reply other threads:[~2005-01-25 0:30 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-01-24 22:24 forestalling GNU incompatibility - proposal for binary relative dynamic linking Edward Peschko
2005-01-24 22:47 ` Edward Peschko
2005-01-24 23:08 ` Mike Frysinger
2005-01-24 23:12 ` Edward Peschko [this message]
2005-01-24 23:10 ` Richard Henderson
2005-01-24 23:16 ` Edward Peschko
2005-01-24 23:38 ` Richard Henderson
2005-01-24 23:53 ` Edward Peschko
2005-01-25 0:29 ` Daniel Jacobowitz
2005-01-25 9:25 ` Adrian von Bidder
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20050124231244.GB19422@venus \
--to=esp5@pge.com \
--cc=binutils@sources.redhat.com \
--cc=gcc@gcc.gnu.org \
--cc=libc-alpha@sources.redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=vapier@gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.