This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
crosstool is a set of scripts for building and testing cross-compilers based on gcc/glibc/linux.
A new release is ready, and can be downloaded from http://kegel.com/crosstool
The big change with this release is that it builds gcc-3.3/glibc-2.3.2 properly on sh4, thanks to patches from Kaz Kojima. You can see the regression test summaries at http://www.kegel.com/crosstool/current/summaries/ They're not entirely pretty for sh4, but at least it's a start.
Changelog: 0.17 4 Aug 2003 The sh4 toolchain is now in about the same state on glibc-2.3.2 as it was on glibc-2.2.5, which is to say a bit shaky compared to ppc405 and ppc750: powerpc-750/gcc-3.3/glibc-2.3.2: fails 1 out of 339 glibc tests powerpc-750/gcc-3.3/glibc-2.2.5: fails 1 out of 247 glibc tests powerpc-405/gcc-3.3/glibc-2.3.2: fails 5 out of 339 glibc tests powerpc-405/gcc-3.3/glibc-2.2.5: fails 5 out of 247 glibc tests sh4/gcc-3.3/glibc-2.3.2: fails 19 out of 339 glibc tests sh4/gcc-3.3/glibc-2.2.5: fails 12 out of 247 glibc tests Still, at least crosstool can now build sh4/gcc-3.3/glibc-2.3.2, which should make it easier for newcomers to verify these test failures and perhaps even fix them.
Thanks to Kaz Kojima for his patient assistance! This release contains three patches he wrote to help me get past dynamic linking problems on SH:
1. gcc-3.3-patches/sh-spec.patch fixes an early segmentation fault in ld-linux.so which caused all dynamically-linked programs to fail on sh4 with glibc-2.3.2. It seems gcc on SH has for years been inserting an rpath of /lib when you didn't specify one, which runs afoul of the new assert (info[DT_RPATH] == NULL); at line 161 in glibc-2.3.2/elf/dynamic-link.h. Simply removing this default rpath from gcc's spec file cures the crash.
The following two patches are needed because glibc-2.3.2 (as of Dec 2002) checks at build time to make sure its shared libraries don't need text relocations (which would hurt prelinking).
2. gcc-3.3-patches/sh-pic-set_fpscr.patch fixes part one cause of make[2]: *** [/build/sh4-unknown-linux-gnu/gcc-3.3-glibc-2.3.2/build-glibc/elf/check-textrel.out] Error 1 Without it, check-textrel complains libc.so: text relocations used linuxthreads/libc.so: text relocations used math/libm.so: text relocations used because there was no PIC version of set_fpscr().
3. binutils-2.14.90.0.5-patches/binutils-sh-relocs.patch fixes another cause of: make[2]: *** [/build/sh4-unknown-linux-gnu/gcc-3.3-glibc-2.3.2/build-glibc/elf/check-textrel.out] Error 1 Without it, check-textrel complains libc.so: text relocations used linuxthreads/libc.so: text relocations used linuxthreads/libpthread.so: text relocations used math/libm.so: text relocations used resolv/libresolv.so: text relocations used because DT_TEXTREL was set even though there were no text relocations.
glibc-{2.2.5,2.3.2}-patches/glibc-test-lowram.patch prevents glibc's tst-calloc from running out of RAM on 32MB target systems, at the cost of weakening the test a bit. The test should probably check RLIMIT_DATA and/or RLIMIT_AS, and use them at runtime to decide how big a test to run. Instead, I've just hardcoded it to be one sixth the original size.
On sh4, g++'s thread/pthread6.cc test failed with gcc-3.3, but not with gcc-ss-3_3-20030714. Not sure what's going on there yet.
On sh4, until gcc-3.4, the -mrelax option in gcc is broken, and the corresponding test in the binutils test suite fails. If you need this to work in gcc-3.3, Kaz says use binutils-2.14.90.0.5 or later, and see http://gcc.gnu.org/ml/gcc-patches/2003-03/msg00226.html and http://gcc.gnu.org/ml/gcc-patches/2003-03/msg00213.html I have not tested these patches yet. The error in the binutils test log is ERROR: -O -mrelax ...ld/testsuite/ld-sh/sh2.c: compilation failed
-- Dan Kegel http://www.kegel.com http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=78045
------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |