This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Bootstrapping cross-toolchain for ia64
On 04/11/2016 11:06, Joseph Myers wrote:
> On Fri, 4 Nov 2016, Adhemerval Zanella wrote:
>
>> 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.
>
> The first GCC (whose build fails) *is* configured with --disable-shared
> (and --without-headers --with-newlib to get inhibit_libc defined). It
> still tries to build unwind code that includes libc headers
> unconditionally.
Yeah I noted, but I think I am doing something different than your
intention. Since the aim of the toolchain I intend to use is just
to *build* ia64 glibc (since I have no way to actually testing it)
I basically did
1. gcc:
1.1. make all-gcc
1.2. make install-gcc
2. glibc
2.1. make install-bootstrap-headers=yes install-headers
2.2. make csu/subdir_lib
2.3. install csu/crt1.o csu/crti.o csu/crtn.o $INSTALL_PATH/$TARGET/lib
2.4. $TARGET-gcc $CFLAGS_GLIBC $CFLAGS_GLIBC -nostdlib -nostartfiles \
-shared -x c /dev/null -o $INSTALL_PATH/$TARGET/lib/libc.so
2.5. touch $INSTALL_PATH/$TARGET/include/gnu/stubs.h
3. gcc:
3.1. make all-target-libgcc
3.2. install-target-libgcc
4. glibc:
4.1. make
4.2. make install
5. gcc:
5.1. make all
5.2. make install
Yes, I know this is *far* from ideal (resulting toolchain is mostly unusable
for actually testing since it lacks shared libgcc), but at least it can verify
glibc build for ia64-linux-gnu targets.