I'm running OpenSolaris 2009.06, building "gcc 4.4.0 [trunk revision 144083]".

If you build and install 'ppl' (because you desire to try it) and 
choose not to build and install 'cloog' (because you do not desire 
to have it) the ./configure scripts detect ppl (and not cloog)
but files will link with 'ppl'.


If we do not have both (and they are not the correct versions) then neither
should be added to the link lines. Here it uses the wrong library and fails:

ranlib  libbackend.a
gcc -m64  -g -fkeep-inline-functions -DIN_GCC   -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wcast-qual -Wold-style-definition
-Wc++-compat -Wmissing-format-attribute -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H  -o
cc1-dummy c-lang.o stub-objc.o attribs.o c-errors.o c-lex.o c-pragma.o c-decl.o
c-typeck.o c-convert.o c-aux-info.o c-common.o c-opts.o c-format.o
c-semantics.o c-ppoutput.o c-cppbuiltin.o c-objc-common.o c-dump.o c-pch.o
c-parser.o i386-c.o sol2-c.o c-gimplify.o tree-mudflap.o c-pretty-print.o
c-omp.o dummy-checksum.o \
  main.o tree-browser.o libbackend.a ../libcpp/libcpp.a
../libdecnumber/libdecnumber.a ../libcpp/libcpp.a ./../intl/libintl.a 
../libiberty/libiberty.a ../libdecnumber/libdecnumber.a  -L/lib -lppl_c -lppl
-lgmpxx -L/usr/local/lib -L/usr/local/lib -lmpfr -lgmp
ld: fatal: file /usr/local/lib/libppl_c.so: wrong ELF class: ELFCLASS32
ld: fatal: file /usr/local/lib/libppl.so: wrong ELF class: ELFCLASS32
ld: fatal: file processing errors. No output written to cc1-dummy
collect2: ld returned 1 exit status
gmake[3]: *** [cc1-dummy] Error 1
gmake[3]: Leaving directory `/usr/share/src/gcc_build/gcc'
gmake[2]: *** [all-stage1-gcc] Error 2
gmake[2]: Leaving directory `/usr/share/src/gcc_build'
gmake[1]: *** [stage1-bubble] Error 2
gmake[1]: Leaving directory `/usr/share/src/gcc_build'
gmake: *** [all] Error 2


If I recompile that with "-lppl_c -lppl" removed then 'cc1-dummy'
will build without linking errors. Do NOT link to the wrong ABI of
a library we are not even using ...

Thanks,
Rob


-- 
           Summary: If you build and install 'ppl' (and not 'cloog') then
                    files will still link with 'ppl'.
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: bootstrap
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: rob1weld at aol dot com
 GCC build triplet: *
  GCC host triplet: *
GCC target triplet: *


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

Reply via email to