This is the mail archive of the libc-help@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Building for older systems


On 12/01/2015 06:59 AM, Carlos O'Donell wrote:
On 12/01/2015 09:56 AM, Michael Eager wrote:
On 11/29/2015 07:02 AM, Carlos O'Donell wrote:
On 11/29/2015 09:20 AM, Michael Eager wrote:
Any solutions to building for an older glibc?

There is only one supported way to do what you want.

You need to build against an old sysroot e.g. --sysroot option
in gcc. With the old system root installed in some path to allow
you to compile against it.


That is equivalent to building on a VM running an older Linux,
which is what I have been doing.

There are dependencies in current tool chains for packages
(or versions) which are not available on old (or, in the case
of RH6.2, ancient) versions of Linux.

How does this matter to you? The tools can have arbitrary dependencies,
but it's the dependencies of the generated code that matters.

It matters that I'm not able to build a current tool chain on
an old system without installing a large number of new packages.
And these have other dependencies.

As always, the compiler injects dependencies into the generated code
at times and thus you must have a compatible compiler runtime also
on the old legacy system.

In practice you almost always need to build a toolchain of the same
vintage as your legacy system and use that for cross-compiling to the
target legacy system using a sysroot.

All in all it's about the equivalent of VM, but in a cross-compilation
environment. Any shortcuts you take will eventually come back to bite
you.

I'll look at using sysroot.  It might address the build dependency
issues.


--
Michael Eager	 eager@eagercon.com
1960 Park Blvd., Palo Alto, CA 94306  650-325-8077


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]