This is the mail archive of the libc-alpha@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: Bootstrapping cross-toolchain for ia64



On 03/11/2016 22:51, Joseph Myers wrote:
> The current cleanest approach for bootstrapping cross toolchains for 
> GNU/Linux targets is (following the guidance at 
> <https://sourceware.org/ml/libc-alpha/2012-03/msg00960.html>):
> 
> * Build binutils.
> 
> * Install kernel headers.
> 
> * Build static-only, C-only GCC, configured so that inhibit_libc is 
> defined, and using --with-glibc-version so things like stack-smashing 
> protection are correctly configured without glibc headers being available.
> 
> * Build glibc, which should be identical to what you get from a longer 
> sequence of alternating GCC and glibc builds (following fixes I made a few 
> years ago for building like that with the initial bootstrap compiler).
> 
> * Build GCC with shared libraries and C++ support.
> 
> * If you want to run the glibc tests, you should reconfigure / rebuild 
> with the new compiler to get everything required for all the tests.
> 
> This doesn't work for ia64 because libgcc depends on system headers even 
> with inhibit_libc.  What's the cleanest approach (assuming recent-enough 
> GCC and glibc) for building a cross toolchain for ia64-linux-gnu target, 
> so I can make build-many-glibcs.py do whatever's necessary?

I faced the same issue and the solution I found was to configure gcc with
'--disable-shared'.  It is not an optimal approach for a complete toolchain,
but it is at least suffice to correctly build glibc.


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