I'm less worried about Mozilla and more interested in lib* so that a FatELF-aware gcc/linker can do cross compiles easily. Ever tried doing a build for an embedded box like ppc or arm on a non-ppc or arm machine? The toolchain is *painful* because you have to make sure to like all the right libs from all the right places for the destination arch plus you have to tell them that although on the current system they're found in /lib/arch-foo/, on the destination system they'll be in /lib ... total PITA. FatELF would provide a solution to that: all the libs are in... /lib. Done, period, end of story, picking the right segment out of the ELF file is something that the linker should do (and complain if it's not found!).
Posted Jun 24, 2010 19:13 UTC (Thu) by tzafrir (subscriber, #11501)
[Link]
What will it take to create them?
Specifically, I have libfoo installed for i386 from my distro. I now want to install libfoo for mips (or even worse: the powerpc variant of the day). Does it mean I have to modify /usr/lib/libfoo.so.1 as shipped by my distro?
SELF: Anatomy of an (alleged) failure
Posted Jun 24, 2010 19:43 UTC (Thu) by dlang (✭ supporter ✭, #313)
[Link]
If only it worked that easily.
sometimes you need different versions of compilers for different architectures.
go read Rob Landley's blog for ongoing headaches in cross compiling.
having the results all in one file is trivial compared to all the other problems.
SELF: Anatomy of an (alleged) failure
Posted Jun 25, 2010 15:59 UTC (Fri) by vonbrand (subscriber, #4458)
[Link]
Your "FatELF aware toolchain" is the sum total of the separate cross-toolchains, so there is no real gain here. That said, GCC has been the cross compiler of choice for most of its life, so it has quite a set of options for doing what you want, cleanly. Not your everyday use, sure, so it can be rough going.