Michael Hope michael.hope@linaro.org wrote on 19.07.2012 00:27:31:
On 19 July 2012 04:31, Ulrich Weigand Ulrich.Weigand@de.ibm.com wrote:
Michael Hope michael.hope@linaro.org wrote:
Here's the details:
- The test is fine when built from the command line
This is weird in particular. It probably means that you built it in a way where it picks up system libgcc and/or libgcov instead of the versions just built in the compiler tree ...
Did you set GCC_EXEC_PREFIX ?
I used the spawn line from gcc.log which includes a -B.
I've looked further and I'm flummoxed. I ran the testsuite with a --tool_opts='-save-temps -v'. gprof-7.o is identical with the command line version, as you'd expect. I took the collect2 line from the verbose log and ran that manually[1] and still got a test that passes. I ran strace to track what static libraries are being used and everything is under the build tree, except /usr/lib/crt{1,n,i}.o and libc_nonshared.a. I especially checked libgcc.a and libgcov.a and both are being pulled from build/gcc.
Not sure what the difference is, specifically. But as mentioned in our call today, during testsuite runs GCC_EXEC_PREFIX *is* set, and that may modify the behaviour in some ways ...
If you look into the gcc build directory under testsuite/gcc/site.exp, you'll find that it sets TEST_GCC_EXEC_PREFIX. When running GCC under the test suite, it will use this setting as the value of GCC_EXEC_PREFIX.
When running the compile on the command line, I'd recommend to manually set GCC_EXEC_PREFIX to the same value to avoid differences ...
Mit freundlichen Gruessen / Best Regards
Ulrich Weigand
-- Dr. Ulrich Weigand | Phone: +49-7031/16-3727 STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E. IBM Deutschland Research & Development GmbH Vorsitzende des Aufsichtsrats: Martina Koederitz | Geschäftsführung: Dirk Wittkopp Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht Stuttgart, HRB 243294