http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51857

             Bug #: 51857
           Summary: gcc -flto ignores -B
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: driver
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: amo...@gmail.com


Extract from running binutils testsuite

Executing on host: sh -c {/home/alan/build/ppc/gcc64-curr/gcc/xgcc 
-B/home/alan/build/ppc/bin64-fedora/ld/tmpdir/ld/
-L/usr/local/powerpc64-linux/lib64 -L/usr/local/lib64 -L/lib64 -L/usr/lib64
-L/usr/local/powerpc64-linux/lib -L/usr/local/lib -L/lib -L/usr/lib 
-B/home/alan/build/ppc/gcc64-curr/gcc/ -m64 -mno-save-toc-indirect  -o
tmpdir/lto-1.exe -L/src/binutils-fedora/ld/testsuite/ld-plugin -O2 -flto
-fuse-linker-plugin tmpdir/lto-1a.o tmpdir/lto-1b.o 2>&1}  /dev/null ld.tmp
(timeout = 300)
/usr/local/powerpc-linux/bin/ld:
/home/alan/build/ppc/gcc64-curr/gcc/liblto_plugin.so: error in plugin cleanup
(ignored/usr/local/powerpc-linux/bin/ld:
/home/alan/build/ppc/gcc64-curr/gcc/liblto_plugin.so: error loading plugin
collect2: error: ld returned 1 exit status
)

Note how -B specifies tmpdir/ld dir so as to pick up the newly built ld, but ld
installed to /usr/local is run.  (The plugin failure is due to the /usr/local
ld being a 32-bit binary while gcc and newly built ld are 64-bit.)

Similar problems can occur when running gcc's own testsuite.  You may not be
testing what you think you're testing..

Reply via email to