I was travelling and could not respond right away.
> I am happy with the CSCRATCH method, which looks safe to me. ... Be sure you understand the risk of "in place" build. > Errors are listed below, can you please help: > There are more than 1500 error lines but they seem to be repetitive. > uname -a > Linux suse9 2.6.5-7.97-s390x #1 SMP Fri Jul 2 14:21:59 UTC 2004 s390x s390x > s390x GNU/Linux Yes, repetitive. Since it appears to be errors related to MD processing (the machine descriptor which GCC uses), you're getting a bigger problem than just the tool chain. I would have suggested upgrading MPFR and GMP, but you already have. Good catch. Do you have kernel headers installed? I upgraded GCC to 4.3.2 on my build system about three months ago. Did not write down all the steps I took, but from memory it included GMP and MPFR as well as relatively current kernel headers. Now ... if 4.3.2 does not work well with Linux 2.6.5 headers (and I have not read the build doc included there) then the task gets more complicated. I would take the discussion off the list at that point, but would be happy to try and help you. I strongly agree with John Summerfield's comment that something built using an older compiler (and tool chain) should run well on newer systems. Here too, you have to test it because occasionally the distributors or even the upstream contributors will drop older support from the run-time environment. The value of using /usr/opt or anything like it is shown in John's example: removing it is as simple as "rm -rf /usr/local/gcc4.4", or in this case "rm /usr/opt/gcc-4.3.2". -- R; <>< On Wed, Jan 13, 2010 at 05:47, rui <[email protected]> wrote: > Hi Richard, > > I am happy with the CSCRATCH method, which looks safe to me. Thanks again > for such detailed explanation, its of great help. > However, after installing gmp 4.1 from rpm and then building mpfr, then > installing it in /usr/opt/mpfr and pointing to right directories, my build > of gcc fails on make. > > Errors are listed below, can you please help: > There are more than 1500 error lines but they seem to be repetitive. > uname -a > Linux suse9 2.6.5-7.97-s390x #1 SMP Fri Jul 2 14:21:59 UTC 2004 s390x s390x > s390x GNU/Linux > > > ----------------------------------------------------------------- > est ! -z "gcc-4.3.2" > test -d gcc-4.3.2 > echo "make: checking that config matches target ..." > make: checking that config matches target ... > test "`cat _cfg`" = "`./setup --system`" > sh -c ' cd gcc-4.3.2 ; exec make ' > make[1]: Entering directory `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2' > [ -f stage_final ] || echo stage3 > stage_final > make[2]: Entering directory `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2' > make[3]: Entering directory `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2' > make[4]: Entering directory `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2' > rm -f stage_current > make[4]: Leaving directory `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2' > make[3]: Leaving directory `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2' > make[3]: Entering directory `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2' > make[4]: Entering directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/host-s390x-ibm-linux-gnu/libiberty' > make[5]: Entering directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/host-s390x-ibm-linux-gnu/libiberty/testsuite' > make[5]: Nothing to be done for `all'. > make[5]: Leaving directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/host-s390x-ibm-linux-gnu/libiberty/testsuite' > make[4]: Leaving directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/host-s390x-ibm-linux-gnu/libiberty' > make[4]: Entering directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/host-s390x-ibm-linux-gnu/intl' > make[4]: Nothing to be done for `all'. > make[4]: Leaving directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/host-s390x-ibm-linux-gnu/intl' > make[4]: Entering directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/build-s390x-ibm-linux-gnu/libiberty' > make[5]: Entering directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/build-s390x-ibm-linux-gnu/libiberty/testsuite' > make[5]: Nothing to be done for `all'. > make[5]: Leaving directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/build-s390x-ibm-linux-gnu/libiberty/testsuite' > make[4]: Leaving directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/build-s390x-ibm-linux-gnu/libiberty' > make[4]: Entering directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/build-s390x-ibm-linux-gnu/fixincludes' > make[4]: Nothing to be done for `all'. > make[4]: Leaving directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/build-s390x-ibm-linux-gnu/fixincludes' > make[4]: Entering directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/host-s390x-ibm-linux-gnu/libcpp' > make[4]: Nothing to be done for `all'. > make[4]: Leaving directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/host-s390x-ibm-linux-gnu/libcpp' > make[4]: Entering directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/host-s390x-ibm-linux-gnu/libdecnumber' > make[4]: Nothing to be done for `all'. > make[4]: Leaving directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/host-s390x-ibm-linux-gnu/libdecnumber' > make[4]: Entering directory > `/pike/m4mbuild/gcc4.3.2/gcc-4.3.2/host-s390x-ibm-linux-gnu/gcc' > gcc -c -g -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes > -Wmissing-prototypes -fno-common -DHAVE_CONFIG_H -DGENERATOR_FILE -I. > -Ibuild -I../.././gcc -I../.././gcc/build -I../.././gcc/../include > -I../.././gcc/../libcpp/include -I/usr/opt/gmp/include > -I/usr/opt/mpfr/include -I../.././gcc/../libdecnumber > -I../.././gcc/../libdecnumber/dpd -I../libdecnumber -o build/gencondmd.o > build/gencondmd.c > In file included from build/gencondmd.c:41: > ../.././gcc/config/s390/constraints.md: In function > `satisfies_constraint_L': > ../.././gcc/config/s390/constraints.md:136: error: `TARGET_ZARCH' undeclared > (first use in this function) > ../.././gcc/config/s390/constraints.md:136: error: (Each undeclared > identifier is reported only once > ../.././gcc/config/s390/constraints.md:136: error: for each function it > appears in.) > ../.././gcc/config/s390/s390.md: At top level: > ../.././gcc/config/s390/s390.md:542: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:542: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:543: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:543: error: (near initialization for > `insn_conditions[0].value') > ../.././gcc/config/s390/s390.md:543: warning: missing initializer > ../.././gcc/config/s390/s390.md:543: warning: (near initialization for > `insn_conditions[0].value') > ../.././gcc/config/s390/s390.md:543: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:543: error: (near initialization for > `insn_conditions[0]') > ../.././gcc/config/s390/s390.md:1351: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:1351: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:1353: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:1353: error: (near initialization for > `insn_conditions[1].value') > ../.././gcc/config/s390/s390.md:1353: warning: missing initializer > ../.././gcc/config/s390/s390.md:1353: warning: (near initialization for > `insn_conditions[1].value') > ../.././gcc/config/s390/s390.md:1353: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:1353: error: (near initialization for > `insn_conditions[1]') > ../.././gcc/config/s390/s390.md:5132: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:5132: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:5133: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:5133: error: (near initialization for > `insn_conditions[2].value') > ../.././gcc/config/s390/s390.md:5133: warning: missing initializer > ../.././gcc/config/s390/s390.md:5133: warning: (near initialization for > `insn_conditions[2].value') > ../.././gcc/config/s390/s390.md:5133: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:5133: error: (near initialization for > `insn_conditions[2]') > ../.././gcc/config/s390/s390.md:6631: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:6631: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:6632: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:6632: error: (near initialization for > `insn_conditions[3].value') > ../.././gcc/config/s390/s390.md:6632: warning: missing initializer > ../.././gcc/config/s390/s390.md:6632: warning: (near initialization for > `insn_conditions[3].value') > ../.././gcc/config/s390/s390.md:6632: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:6632: error: (near initialization for > `insn_conditions[3]') > ../.././gcc/config/s390/s390.md:2978: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:2978: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:2979: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:2979: error: (near initialization for > `insn_conditions[4].value') > ../.././gcc/config/s390/s390.md:2979: warning: missing initializer > ../.././gcc/config/s390/s390.md:2979: warning: (near initialization for > `insn_conditions[4].value') > ../.././gcc/config/s390/s390.md:2979: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:2979: error: (near initialization for > `insn_conditions[4]') > ../.././gcc/config/s390/s390.md:2871: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:2873: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:277: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:2871: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:2873: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:277: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:278: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:278: error: (near initialization for > `insn_conditions[5].value') > ../.././gcc/config/s390/s390.md:278: warning: missing initializer > ../.././gcc/config/s390/s390.md:278: warning: (near initialization for > `insn_conditions[5].value') > ../.././gcc/config/s390/s390.md:278: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:278: error: (near initialization for > `insn_conditions[5]') > ../.././gcc/config/s390/s390.md:1319: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:1319: error: (near initialization for > `insn_conditions[6]') > ../.././gcc/config/s390/s390.md:271: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:271: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:272: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:272: error: (near initialization for > `insn_conditions[7].value') > ../.././gcc/config/s390/s390.md:272: warning: missing initializer > ../.././gcc/config/s390/s390.md:272: warning: (near initialization for > `insn_conditions[7].value') > ../.././gcc/config/s390/s390.md:272: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:272: error: (near initialization for > `insn_conditions[7]') > ../.././gcc/config/s390/s390.md:1162: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:1162: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:1164: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:1164: error: (near initialization for > `insn_conditions[8].value') > ../.././gcc/config/s390/s390.md:1164: warning: missing initializer > ../.././gcc/config/s390/s390.md:1164: warning: (near initialization for > `insn_conditions[8].value') > ../.././gcc/config/s390/s390.md:1164: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:1164: error: (near initialization for > `insn_conditions[8]') > ../.././gcc/config/s390/s390.md:746: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:746: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:747: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:747: error: (near initialization for > `insn_conditions[9].value') > ../.././gcc/config/s390/s390.md:747: warning: missing initializer > ../.././gcc/config/s390/s390.md:747: warning: (near initialization for > `insn_conditions[9].value') > ../.././gcc/config/s390/s390.md:747: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:747: error: (near initialization for > `insn_conditions[9]') > ../.././gcc/config/s390/s390.md:3465: error: `TARGET_HARD_FLOAT' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:3465: error: `TARGET_HARD_FLOAT' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:3466: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:3466: error: (near initialization for > `insn_conditions[10].value') > ../.././gcc/config/s390/s390.md:3466: warning: missing initializer > ../.././gcc/config/s390/s390.md:3466: warning: (near initialization for > `insn_conditions[10].value') > ../.././gcc/config/s390/s390.md:3466: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:3466: error: (near initialization for > `insn_conditions[10]') > ../.././gcc/config/s390/s390.md:894: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:894: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:896: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:896: error: (near initialization for > `insn_conditions[11].value') > ../.././gcc/config/s390/s390.md:896: warning: missing initializer > ../.././gcc/config/s390/s390.md:896: warning: (near initialization for > `insn_conditions[11].value') > ../.././gcc/config/s390/s390.md:896: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:896: error: (near initialization for > `insn_conditions[11]') > ../.././gcc/config/s390/s390.md:5610: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:5610: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:5611: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:5611: error: (near initialization for > `insn_conditions[12].value') > ../.././gcc/config/s390/s390.md:5611: warning: missing initializer > ../.././gcc/config/s390/s390.md:5611: warning: (near initialization for > `insn_conditions[12].value') > ../.././gcc/config/s390/s390.md:5611: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:5611: error: (near initialization for > `insn_conditions[12]') > ../.././gcc/config/s390/s390.md:3002: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:3002: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:271: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:3002: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:3002: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:271: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:272: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:272: error: (near initialization for > `insn_conditions[13].value') > ../.././gcc/config/s390/s390.md:272: warning: missing initializer > ../.././gcc/config/s390/s390.md:272: warning: (near initialization for > `insn_conditions[13].value') > ../.././gcc/config/s390/s390.md:272: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:272: error: (near initialization for > `insn_conditions[13]') > ../.././gcc/config/s390/s390.md:3465: error: `TARGET_HARD_FLOAT' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:3465: error: `TARGET_HARD_FLOAT' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:3466: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:3466: error: (near initialization for > `insn_conditions[14].value') > ../.././gcc/config/s390/s390.md:3466: warning: missing initializer > ../.././gcc/config/s390/s390.md:3466: warning: (near initialization for > `insn_conditions[14].value') > ../.././gcc/config/s390/s390.md:3466: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:3466: error: (near initialization for > `insn_conditions[14]') > ../.././gcc/config/s390/s390.md:710: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:710: error: (near initialization for > `insn_conditions[15]') > ../.././gcc/config/s390/s390.md:4242: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:4242: error: (near initialization for > `insn_conditions[16]') > ../.././gcc/config/s390/s390.md:5940: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:5940: error: (near initialization for > `insn_conditions[17]') > ../.././gcc/config/s390/s390.md:849: error: `TARGET_HARD_FLOAT' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:256: error: `TARGET_HARD_DFP' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:849: error: `TARGET_HARD_FLOAT' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:256: error: `TARGET_HARD_DFP' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:257: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:257: error: (near initialization for > `insn_conditions[18].value') > ../.././gcc/config/s390/s390.md:257: warning: missing initializer > ../.././gcc/config/s390/s390.md:257: warning: (near initialization for > `insn_conditions[18].value') > ../.././gcc/config/s390/s390.md:257: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:257: error: (near initialization for > `insn_conditions[18]') > ../.././gcc/config/s390/s390.md:5894: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:5894: error: (near initialization for > `insn_conditions[19]') > ../.././gcc/config/s390/s390.md:4199: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:4199: error: (near initialization for > `insn_conditions[20]') > ../.././gcc/config/s390/s390.md:6671: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:6671: error: (near initialization for > `insn_conditions[21]') > ../.././gcc/config/s390/s390.md:1190: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:1190: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:1195: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:1195: error: (near initialization for > `insn_conditions[22].value') > ../.././gcc/config/s390/s390.md:1195: warning: missing initializer > ../.././gcc/config/s390/s390.md:1195: warning: (near initialization for > `insn_conditions[22].value') > ../.././gcc/config/s390/s390.md:1195: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:1195: error: (near initialization for > `insn_conditions[22]') > ../.././gcc/config/s390/s390.md:7453: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:7453: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:7454: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:7454: error: (near initialization for > `insn_conditions[23].value') > ../.././gcc/config/s390/s390.md:7454: warning: missing initializer > ../.././gcc/config/s390/s390.md:7454: warning: (near initialization for > `insn_conditions[23].value') > ../.././gcc/config/s390/s390.md:7454: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:7454: error: (near initialization for > `insn_conditions[23]') > ../.././gcc/config/s390/s390.md:760: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:760: error: (near initialization for > `insn_conditions[24]') > ../.././gcc/config/s390/s390.md:849: error: `TARGET_HARD_FLOAT' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:849: error: `TARGET_HARD_FLOAT' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:850: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:850: error: (near initialization for > `insn_conditions[25].value') > ../.././gcc/config/s390/s390.md:850: warning: missing initializer > ../.././gcc/config/s390/s390.md:850: warning: (near initialization for > `insn_conditions[25].value') > ../.././gcc/config/s390/s390.md:850: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:850: error: (near initialization for > `insn_conditions[25]') > ../.././gcc/config/s390/s390.md:7691: error: `TARGET_BACKCHAIN' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:7691: error: `TARGET_BACKCHAIN' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:7692: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:7692: error: (near initialization for > `insn_conditions[26].value') > ../.././gcc/config/s390/s390.md:7692: warning: missing initializer > ../.././gcc/config/s390/s390.md:7692: warning: (near initialization for > `insn_conditions[26].value') > ../.././gcc/config/s390/s390.md:7692: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:7692: error: (near initialization for > `insn_conditions[26]') > ../.././gcc/config/s390/s390.md:3215: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:3215: error: `TARGET_ZARCH' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:3218: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:3218: error: (near initialization for > `insn_conditions[27].value') > ../.././gcc/config/s390/s390.md:3218: warning: missing initializer > ../.././gcc/config/s390/s390.md:3218: warning: (near initialization for > `insn_conditions[27].value') > ../.././gcc/config/s390/s390.md:3218: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:3218: error: (near initialization for > `insn_conditions[27]') > ../.././gcc/config/s390/s390.md:683: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:683: error: (near initialization for > `insn_conditions[28]') > ../.././gcc/config/s390/s390.md:4653: error: `TARGET_HARD_FLOAT' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:4653: error: `TARGET_FUSED_MADD' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:4653: error: `TARGET_HARD_FLOAT' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:4653: error: `TARGET_FUSED_MADD' undeclared > here (not in a function) > ../.././gcc/config/s390/s390.md:4654: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:4654: error: (near initialization for > `insn_conditions[29].value') > ../.././gcc/config/s390/s390.md:4654: warning: missing initializer > ../.././gcc/config/s390/s390.md:4654: warning: (near initialization for > `insn_conditions[29].value') > ../.././gcc/config/s390/s390.md:4654: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:4654: error: (near initialization for > `insn_conditions[29]') > ../.././gcc/config/s390/s390.md:908: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:908: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:910: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:910: error: (near initialization for > `insn_conditions[30].value') > ../.././gcc/config/s390/s390.md:910: warning: missing initializer > ../.././gcc/config/s390/s390.md:910: warning: (near initialization for > `insn_conditions[30].value') > ../.././gcc/config/s390/s390.md:910: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:910: error: (near initialization for > `insn_conditions[30]') > ../.././gcc/config/s390/s390.md:6987: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:6987: error: `TARGET_64BIT' undeclared here > (not in a function) > ../.././gcc/config/s390/s390.md:6999: error: initializer element is not > constant > ../.././gcc/config/s390/s390.md:6999: error: (near initialization for > `insn_conditions[31].value') > ../.././gcc/config/s390/s390.md:6999: warning: missing initializer > ---------------------------------------------------------------------------------------------------------------------------------- > > Regards, > Raja > > > On Wed, Jan 13, 2010 at 4:15 AM, Richard Troth <[email protected]> wrote: > >> > Thanks a lot Richard and Mark for such a detailed explanation. I am using >> > the "/usr/opt scheme" to build gcc . >> >> Awesome. >> >> > Can i use the second scheme for any version of gcc, as currently its >> working >> > on 4.3.2? >> >> /usr/opt works for any release of any package (as long as the package >> works with it at all) >> >> From here, this note gets long. Sorry. >> (Well ... not as long as my first reply in this thread.) >> >> > Also, when you said that the first scheme will update most other packages >> IN >> > PLACE, what do you mean by that? Did you ou mean to say that the binutils >> ... >> >> The first scheme (CSCRATCH) is totally different from the /usr/opt scheme. >> By "in place", I mean that it replaces the packages in their standard >> locations. >> It does not relocate them like /usr/opt does. It is only by coincidence >> that I >> had changed the logic for GCC and BINUTILS under that scheme to be >> installed in /opt/gcc and that it happened to fit what you were asking. >> >> If you built TCSH, for example, with CSCRATCH, >> you would get a new /usr/bin/tcsh which would replace your existing >> /usr/bin/tcsh. >> The original copy would be gone. >> >> BINUTILS in CSCRATCH is set to install under /opt/gcc >> even though it is built separately from GCC. Most packages built >> with CSCRATCH go under /usr or somewhere else in the operating system's >> file hierarchy. But I chose to place the assembler and C compiler >> under /opt/gcc. >> It simply makes those two packages easy to fence off from the rest of >> the system. >> I normally use /usr/opt for such trickery. >> >> ... >> > will be replaced, but the gcc wouldn't be? I like the first scheme, looks >> > like it will work on all platforms with all versions of gcc, but can you >> > clear the INPlace thing and does it have any consequences on the system? >> >> You can change CSCRATCH any way you like. >> It is just a crude wrapper around 'make' and the standard recipe. >> But it does not lend itself to multiple versions of a package the way >> /usr/opt does. >> >> I hope this helps. >> >> -- R; <>< >> >> >> >> >> >> On Tue, Jan 12, 2010 at 10:09, rui <[email protected]> wrote: >> > Thanks a lot Richard and Mark for such a detailed explanation. I am using >> > the "/usr/opt scheme" to build gcc . >> > >> > However, couple of queries: >> > Can i use the second scheme for any version of gcc, as currently its >> working >> > on 4.3.2? >> > Also, when you said that the first scheme will update most other packages >> IN >> > PLACE, what do you mean by that? Did you ou mean to say that the binutils >> > will be replaced, but the gcc wouldn't be? I like the first scheme, looks >> > like it will work on all platforms with all versions of gcc, but can you >> > clear the INPlace thing and does it have any consequences on the system? >> > >> > Regards, >> > Raja >> > >> > >> > >> > On Sat, Jan 9, 2010 at 6:02 PM, Richard Troth <[email protected]> >> wrote: >> > >> >> Building GCC is not difficult, but is time consuming. (MOST of the >> >> time is simply letting the build run while you go off and have a cup >> >> of coffee ... or a four course meal ... and dessert ... and take in a >> >> movie.) You will, of course, need a fully functional development >> >> environment before you can [re]build GCC. >> >> >> >> When it works, it is mostly unattended. When it doesn't work, you >> >> will have to take the time and figure out what broke. (Maybe you >> >> simply need to upgrade some other support utility. Who knows?) >> >> >> >> YES, you can have two versions of GCC on the same system. No problem! >> >> What you must do is have them in different locations. I use two >> >> schemes for building GCC, as follows, BOTH of which place GCC apart >> >> from the usual locations. Both of them will automagically download >> >> the GCC source for you. >> >> >> >> *** Using "CSCRATCH" to build GCC *** >> >> >> >> I often use this in-place build scheme which includes GCC (and >> >> BINUTILS, which you may also want to upgrade). It happens that the >> >> scheme I call CSCRATCH places GCC (and BINUTILS) under /opt/gcc rather >> >> than under /usr, so your old compiler would still be available. (And >> >> would in fact be the default.) Be aware that this scheme will replace >> >> most other packages IN PLACE. The fact that it relocates GCC is a >> >> happy coincidence that I won't elaborate on today. It is presently >> >> doing GCC 4.3.2. If you have a machine, which already has a compiler, >> >> you are welcome to try ... >> >> >> >> mkdir /tmp/csc >> >> cd /tmp/csc >> >> wget http://www.casita.net/pub/csc/makefile >> >> make gcc.mk >> >> make gcc.src >> >> make gcc.cfg >> >> make gcc.exe >> >> sudo make gcc.ins >> >> >> >> Then to run the new compiler, set it first in command search ... >> >> >> >> PATH=/opt/gcc/bin:$PATH ; export PATH >> >> >> >> You may want to do the same for BINUTILS which is at the 2.18.50.0.6 >> >> level. (And also lands safely under /opt/gcc.) >> >> >> >> *** Using "/usr/opt" to build GCC *** >> >> >> >> I also often use a non-intrusive scheme for building packages, >> >> including GCC, which lets you isolate things from the operating >> >> system. (So it does not break your box out of DPKG or RPM >> >> management.) Someone at Rice University came up with the basic idea >> >> years ago, and I have come to rely on it heavily. I found the build >> >> logic for GCC 4.3.2 for this scheme and uploaded it to the web. >> >> "/usr/opt" by design keeps everything AWAY FROM the operating system, >> >> so here too your old compiler would still be available. (And would >> >> again still be the default.) There are more steps (than with >> >> CSCRATCH), but this is a much more open-ended solution. >> >> >> >> mkdir /tmp/gcc-4.3.2 >> >> cd /tmp/gcc-4.3.2 >> >> wget http://www.casita.net/pub/gcc/gcc-4.3.2.mak >> >> cp -p gcc-4.3.2.mak makefile >> >> wget http://www.casita.net/pub/setup.sh >> >> cp -p setup.sh setup >> >> chmod a+rx setup >> >> make source >> >> make config >> >> make >> >> sudo mkdir -m 1777 /usr/opt >> >> make install >> >> ./setup >> >> >> >> Again, to run the new compiler, make it first in your command search ... >> >> >> >> PATH=/usr/opt/gcc/bin:$PATH ; export PATH >> >> >> >> You may want to do the same with "binutils-2.18.50.0.9". >> >> >> >> I do not know how well a home-grown GCC will behave w/r/t your mixed >> >> 32-bit and 64-bit environment. Personally, I would use one of the >> >> above methods and then rigorously test the stuff built by the new GCC. >> >> (Most of the libraries are outside of compiler space.) Rigorous >> >> testing is standard operating procedure, yes? :-) >> >> >> >> -- R; <>< >> >> >> >> >> >> >> >> >> >> >> >> On Fri, Jan 8, 2010 at 11:26, rui <[email protected]> wrote: >> >> > Hi all, >> >> > >> >> > I am looking for gcc 4.2 onwards on sles9 x86_64. Can I get a prebuilt >> >> gcc >> >> > or do i have to build it myself? if building is the way to go, what >> >> should >> >> > be the configuration options? >> >> > I would like GCC to have 64 bit libs - having 32 bit libs is useful, >> but >> >> not >> >> > necessary. >> >> > >> >> > Regards, >> >> > Raja >> >> > >> >> > >> ---------------------------------------------------------------------- >> >> > For LINUX-390 subscribe / signoff / archive access instructions, >> >> > send email to [email protected] with the message: INFO LINUX-390 >> or >> >> visit >> >> > http://www.marist.edu/htbin/wlvindex?LINUX-390 >> >> > >> >> >> >> ---------------------------------------------------------------------- >> >> For LINUX-390 subscribe / signoff / archive access instructions, >> >> send email to [email protected] with the message: INFO LINUX-390 >> or >> >> visit >> >> http://www.marist.edu/htbin/wlvindex?LINUX-390 >> >> >> > >> > ---------------------------------------------------------------------- >> > For LINUX-390 subscribe / signoff / archive access instructions, >> > send email to [email protected] with the message: INFO LINUX-390 or >> visit >> > http://www.marist.edu/htbin/wlvindex?LINUX-390 >> > >> >> ---------------------------------------------------------------------- >> For LINUX-390 subscribe / signoff / archive access instructions, >> send email to [email protected] with the message: INFO LINUX-390 or >> visit >> http://www.marist.edu/htbin/wlvindex?LINUX-390 >> > > ---------------------------------------------------------------------- > For LINUX-390 subscribe / signoff / archive access instructions, > send email to [email protected] with the message: INFO LINUX-390 or visit > http://www.marist.edu/htbin/wlvindex?LINUX-390 > ---------------------------------------------------------------------- For LINUX-390 subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO LINUX-390 or visit http://www.marist.edu/htbin/wlvindex?LINUX-390
