We recently upgraded to 4.2.1 and noticed an immediate issue. After compiling
gcc for sparcv9 and specifically setting --with-ld=/usr/local/gnu/bin/ld,
whenever gcc actually runs it internally calls the Sun linker and therefore
dies with unknown options. A simple "hello world" refuses to build because of
bad LD options. Setting LD= seems to have little effect. I'm pasting a -v
output of it below. Note I was using g++ here because that was handy, but it is
the same for eitehr gcc or g++:

/usr/local/bin/sparcv9/g++ -v hello.cpp   
Using built-in specs.
Target: sparc-sun-solaris2.9
Configured with: ../configure --enable-shared --enable-threads
--with-ld=/usr/local/gnu/bin/ld --with-as=/usr/local/gnu/bin/as
--disable-multilib --disable-libgcj --disable-libffi --disable-libjava
--disable-nls --bindir=/usr/local/bin/sparcv9 --libdir=/usr/local/lib/sparcv9
Thread model: posix
gcc version 4.2.1
 /usr/local/libexec/gcc/sparc-sun-solaris2.9/4.2.1/cc1plus -quiet -v
-D__sparcv8 hello.cpp -quiet -dumpbase hello.cpp -mcpu=v9 -auxbase hello
-version -o /var/tmp//ccM6WkGY.s
ignoring nonexistent directory "NONE/include"
ignoring nonexistent directory
"/usr/local/lib/gcc/sparc-sun-solaris2.9/4.2.1/../../../../sparc-sun-solaris2.9/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/lib/gcc/sparc-sun-solaris2.9/4.2.1/../../../../include/c++/4.2.1

/usr/local/lib/gcc/sparc-sun-solaris2.9/4.2.1/../../../../include/c++/4.2.1/sparc-sun-solaris2.9

/usr/local/lib/gcc/sparc-sun-solaris2.9/4.2.1/../../../../include/c++/4.2.1/backward
 /usr/local/include
 /usr/local/lib/gcc/sparc-sun-solaris2.9/4.2.1/include
 /usr/include
End of search list.
GNU C++ version 4.2.1 (sparc-sun-solaris2.9)
        compiled by GNU C version 4.2.1.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 7f9cd0c7cc891b25f4cbce210dc67670
 /usr/local/gnu/bin/as -V -Qy -s -xarch=v8plus -o /var/tmp//ccZD9lJS.o
/var/tmp//ccM6WkGY.s
GNU assembler version 2.17 (sparc-sun-solaris2.9) using BFD version 2.17
 /usr/local/libexec/gcc/sparc-sun-solaris2.9/4.2.1/collect2 -V -Y
P,/usr/ccs/lib:/usr/lib -rpath-link /usr/lib -Qy
/usr/local/lib/sparcv9/gcc/sparc-sun-solaris2.9/4.2.1/crt1.o
/usr/local/lib/sparcv9/gcc/sparc-sun-solaris2.9/4.2.1/crti.o
/usr/ccs/lib/values-Xa.o
/usr/local/lib/sparcv9/gcc/sparc-sun-solaris2.9/4.2.1/crtbegin.o
-L/usr/local/lib/sparcv9/gcc/sparc-sun-solaris2.9/4.2.1 -L/usr/ccs/lib
-L/usr/local/lib/sparcv9/gcc/sparc-sun-solaris2.9/4.2.1/../../..
/var/tmp//ccZD9lJS.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc -lc
/usr/local/lib/sparcv9/gcc/sparc-sun-solaris2.9/4.2.1/crtend.o
/usr/local/lib/sparcv9/gcc/sparc-sun-solaris2.9/4.2.1/crtn.o
ld: Software Generation Utilities - Solaris Link Editors: 5.9-1.390
ld: fatal: option -dn and -P are incompatible
ld: fatal: Flags processing errors
collect2: ld returned 1 exit status


-- 
           Summary: gcc 4.2.1 ignores GNU LD in Solaris 9
           Product: gcc
           Version: 4.2.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dhaliK at jla dot rutgers dot edu


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

Reply via email to