On Wed, 2005-10-12 at 12:24, Richard L. Hamilton wrote:
> Is anyone aware of an ELF implementation of something like "fat" binaries -
> something
> that could package binaries for multiple architectures (i.e. SPARC, x86, and
> maybe
> even PPC one day) into a single file? Assuming there's some body responsible
> for the
> ELF standard, would it be possible to pursue that? And would such a thing
> be desirable for Solaris (perhaps simplifying some issues regarding binary
> software
> distribution and/or administration and execution in mixed platform
> environments)?
I'm not aware of any effort in this area.
What I do is I have a shell script version of /usr/lib/isaexec that uses
/usr/bin/isalist. I then have subdirs of bin for each of the
architectures, eg:
bin/i386/foo
bin/amd64/foo
bin/sparcv7/foo
bin/sparcv9/foo
bin/foo -> bin/isaexec.sh
I had to use a shell script version of isaexec because it by default is
a binary in the 32 bit form for the architecture you are running.
However this only helps for binaries that only use system libraries and
doesn't help with the libraries themselves - at least not the 32 bit
versions, for 64 bit we have /sparcv9/ and /amd64/ subdirs of the
lib dirs.
Is it really that big a problem for code shipped in ELF format ?
At Sun we ship all of the Java Enterprise Suite on SPARC and x86 for
Solaris, some of it has 64 bit versions as well. We generally separate
out packages that have no binaries in them (as we don on Solaris) and
those are common, everything else has a SPARC variant and an x86 variant
(same package name and content just different arch).
--
Darren J Moffat