This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Building gcc 4.6.1 using a later version
- From: "Guillaume Quere" <gquere at ece dot fr>
- To: <gcc-help at gcc dot gnu dot org>
- Date: Tue, 18 Mar 2014 11:54:37 +0100
- Subject: Building gcc 4.6.1 using a later version
- Authentication-results: sourceware.org; auth=none
Hello,
I've been trying to build gcc 4.6.1 as a toolchain for OpenWRT from gcc 4.8.2 and gcc 4.7.3.
I've had two problems and thought this would be a good place to archive them, since I spent a good deal of time looking for the solution to the second one.
First problem:
unsigned thread_local : 1;
gtype-desc.c:8829:18: error: subscripted value is neither array nor pointer nor vector
sizeof (x_rtl[0]),
gtype-desc.c:8948:36: error: subscripted value is neither array nor pointer nor vector
sizeof (default_target_libfuncs[0]),
gtype-desc.c:9032:31: error: subscripted value is neither array nor pointer nor vector
sizeof (default_target_rtl[0]),
gtype-desc.c:9053:31: error: subscripted value is neither array nor pointer nor vector
sizeof (default_target_rtl[0]),
gtype-desc.c:9060:31: error: subscripted value is neither array nor pointer nor vector
sizeof (default_target_rtl[0]),
gtype-desc.c:9067:31: error: subscripted value is neither array nor pointer nor vector
sizeof (default_target_rtl[0]),
make[5]: *** [gtype-desc.o] Error 1
It is reported and solved using the patch on 4.6.1 mentioned here:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51969
Second problem:
/somepath/openwrt/build_dir/toolchain-armeb_gcc-4.6.1_uClibc-0.9.32_eabi/gcc-4.6.1/libgcc/../gcc/libgcc2.c: In function '__negdi2':
/somepath/openwrt/build_dir/toolchain-armeb_gcc-4.6.1_uClibc-0.9.32_eabi/gcc-4.6.1/libgcc/../gcc/libgcc2.c:72:1: internal compiler error: Segmentation fault
Is fixed using this patch on 4.6.1: http://gcc.gnu.org/viewcvs/gcc/branches/gcc-4_7-branch/gcc/ira-int.h?r1=191605&r2=191604&pathrev=191605
Fixing these two things, I successfully built 4.6.1 using 4.7.3. Can't say for sure that it'll also work for 4.8.2 but the errors were quite similar, so there's a good chance it will.
Hope this helps someone someday,
GQ