This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug bootstrap/11890] New: Building cross gcc-3.3.1 for sparc-sun-solaris2.6 fails
- From: "sampo at symlabs dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 12 Aug 2003 03:29:29 -0000
- Subject: [Bug bootstrap/11890] New: Building cross gcc-3.3.1 for sparc-sun-solaris2.6 fails
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11890
Summary: Building cross gcc-3.3.1 for sparc-sun-solaris2.6 fails
Product: gcc
Version: 3.3.1
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sampo at symlabs dot com
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: sparc-sun-solaris2.6
1. I am unable to build ix86 Linux to sparc-sun-solaris2.6 cross compiler
by following the (scant) instructions supplied with gcc-3.3.1. I believe
this failure is due to bug in gcc cross compilation support using --with-sysroot
option, see for details below.
2. The recommended FAQ at http://www.objsw.com/CrossGCC/ and
http://www.sthoward.com/CrossGCC/ is hopelessly out of date
(v1.01, Dec 3, 1999) and does not provide answer to my question
3. The domain name for crossgcc mailinglist (crossgcc@sourceware.cygnus.com) as
supplied by the said FAQ does not exist. Thus I am not able to obtain help
by any of the "recommended" means.
4. All google and dejanews searches for cross compilation provide outdated
instructions using gcc-2.95.3 and --with-headers option. As you know this option
is deprecated for gcc-3.3.1
Thus I am at my wits end and need to get some help or pointers to
right places. Also the documentation bugs (such as lack of
documentation and outdated FAQ) should also be fixed.
What I did
----------
# 1. Start by installing native gcc-3.3.1 on both Linux and Solaris 2.6. Install
# binutils on both as well.
# 2. build cross binutils for sparc-sun-solaris2.6 on Linux (using binutils-2.14.90.0.4.1)
export PATH=/apps/binutils/std/bin:/apps/gcc/3.3.1/bin:$PATH
mkdir build-binutils
cd build-binutils
../binutils-2.14.90.0.4.1/configure --prefix=/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6 -target=sparc-sun-solaris2.6
make
make install
# (snip - output of this build process will be provided if deemed relevant, it worked ok)
# 3. roll tar ball of headers and libraries on Solaris 2.6
cd /
tar cf solaris2.6-sysroot.tar usr/include usr/lib apps/openssl/0.9.7b-gcc-2.95.3/include apps/openssl/0.9.7b-gcc-2.95.3/lib usr/local/include usr/local/lib usr/ccs/lib
# 4. unpack sysroot on Linux machine (N.B. the --prefix of cross compiler will be
# /apps/gcc/3.3.1-sparc-sun-solaris2.6 and I am placing the sysroot under the
# prefix per instructions in http://gcc.gnu.org/install/configure.html for
# --with-sysroot option - supposedly sysroot will be found by relative path)
mkdir /apps/gcc/3.3.1-sparc-sun-solaris2.6/sysroot
cd /apps/gcc/3.3.1-sparc-sun-solaris2.6/sysroot
tar xf solaris2.6-sysroot.tar
ln -s usr/lib # on Solaris 2.6 /lib is just a symlink to /usr/lib
# 5. configure and (attempt to) compile the cross compiler
export PATH=/apps/binutils/std/bin:/apps/gcc/3.3.1/bin:/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin:$PATH
mkdir build-gcc-sol26
cd build-gcc-sol26
../gcc-3.3.1/configure --prefix=/apps/gcc/3.3.1-sparc-sun-solaris2.6 --target=sparc-sun-solaris2.6 --enable-languages=c --with-sysroot=/apps/gcc/3.3.1-sparc-sun-solaris2.6/sysroot -with-gnu-as -with-as=/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-as -with-gnu-ld -with-ld=/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-ld
Configuring for a i686-pc-linux-gnu host.
*** This configuration is not supported in the following subdirectories:
target-libstdc++-v3 target-libf2c target-libffi target-boehm-gc target-zlib target-libjava zlib fastjar target-libobjc
(Any other directories should still work fine.)
# (snip, full configure output available upon request. N.B. The "unsupported" warning
# is bogus in my opinion since I only requested plain C support and the mentioned
# directories appear to be related to C++ and Java)
configure: warning:
*** Makeinfo is missing or too old.
*** Info documentation will not be built.
Links are now set up to build a cross-compiler for sparc-sun-solaris2.6
from i686-pc-linux-gnu.
make
# (snip, tons of output available upon request)
/d/src/build-gcc/gcc/xgcc -B/d/src/build-gcc/gcc/ -B/apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/bin/ -B/apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/lib/ -isystem /apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/include -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include -I. -I. -I../../gcc-3.3.1/gcc -I../../gcc-3.3.1/gcc/. -I../../gcc-3.3.1/gcc/config -I../../gcc-3.3.1/gcc/../include \
-c ../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c -o gmon.o
In file included from ../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:36:
../../gcc-3.3.1/gcc/system.h:45:19: stdio.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:107:23: sys/types.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:109:19: errno.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:116:21: string.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:117:22: strings.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:129:21: stdlib.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:152:21: unistd.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:156:24: sys/param.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:195:23: sys/time.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:196:19: time.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:208:20: fcntl.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:246:22: sys/wait.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:313:20: malloc.h: No such file or directory
../../gcc-3.3.1/gcc/system.h:382:23: sys/stat.h: No such file or directory
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c: In function `monstartup':
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:112: warning: implicit declaration of function `sbrk'
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:112: warning: assignment makes pointer from integer without a cast
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:114: warning: implicit declaration of function `write'
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:136: warning: assignment makes pointer from integer without a cast
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c: In function `_mcleanup':
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:186: warning: implicit declaration of function `getenv'
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:186: warning: assignment makes pointer from integer without a cast
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:192: warning: implicit declaration of function `strrchr'
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:198: warning: implicit declaration of function `sprintf'
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:198: warning: implicit declaration of function `getpid'
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:204: warning: implicit declaration of function `creat'
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:206: warning: implicit declaration of function `perror'
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:231: warning: implicit declaration of function `close'
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c: In function `internal_mcount':
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:301: warning: implicit declaration of function `atexit'
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c: In function `moncontrol':
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:415: warning: implicit declaration of function `profil'
make[1]: *** [gmon.o] Error 1
make[1]: Leaving directory `/d/src/build-gcc/gcc'
make: *** [all-gcc] Error 2
### BUG1: Judging by the -isystem flag, there is supposed to
### exist /apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/include
### but this directory does not appear have been created (yet?). It seems
### the include files of the target were intended, so lets try some symlinks...
### I still assert that the very fact that I need to create these symlinks
### constitutes a bug.
mkdir /apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6
cd /apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6
ln -s ../sysroot/usr/include
ln -s ../sysroot/usr/lib
# Start clean in case some builds had found wrong headers due to missing symlinks
rm -rf *
./configure (with same options)
make
# (snip, tons of output available upon request)
/d/src/build-gcc/gcc/xgcc -B/d/src/build-gcc/gcc/ -B/apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/bin/ -B/apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/lib/ -isystem /apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/include -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include -I. -I. -I../../gcc-3.3.1/gcc -I../../gcc-3.3.1/gcc/. -I../../gcc-3.3.1/gcc/config -I../../gcc-3.3.1/gcc/../include \
-c ../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c -o gmon.o
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c: In function `_mcleanup':
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:181: error: `PATH_MAX' undeclared (first use in this function)
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:181: error: (Each undeclared identifier is reported only once
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:181: error: for each function it appears in.)
../../gcc-3.3.1/gcc/config/sparc/gmon-sol2.c:181: warning: unused variable `buf'
make[1]: *** [gmon.o] Error 1
make[1]: Leaving directory `/d/src/build-gcc/gcc'
make: *** [all-gcc] Error 2
### BUG2: This may in reality be a missing include file bug in gcc/gmon-sol2.c,
### but I simply edited gcc/gmon-sol2.c to simply remove the one petty reference
### to PATH_MAX (used 1024 instead)
make
# (snip, tons of output available upon request)
/d/src/build-gcc/gcc/xgcc -B/d/src/build-gcc/gcc/ -B/apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/bin/ -B/apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/lib/ -isystem /apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/include -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -shared -nodefaultlibs -Wl,--soname=libgcc_s.so.1 -Wl,--version-script=libgcc/./libgcc.map -o libgcc_s.so.1 libgcc/./_muldi3.o libgcc/./_negdi2.o libgcc/./_lshrdi3.o libgcc/./_ashldi3.o libgcc/./_ashrdi3.o libgcc/./_ffsdi2.o libgcc/./_clz.o libgcc/./_cmpdi2.o libgcc/./_ucmpdi2.o libgcc/./_floatdidf.o libgcc/./_floatdisf.o libgcc/./_fixunsdfsi.o libgcc/./_fixunssfsi.o libgcc/./_fixunsdfdi.o libgcc/./_fixdfdi.o libgcc/./_fixunssfdi.o libgcc/./_fixsfdi.o libgcc/./_fixxfdi.o libgcc/./_fixunsxfdi.o libgcc/./_floatdixf.o libgcc/./_fixunsxfsi.o libgcc/./_fixtfdi.o li
/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-ld: cannot open values-Xa.o: No such file or directory
collect2: ld returned 1 exit status
make[2]: *** [libgcc_s.so] Error 1
make[2]: Leaving directory `/d/src/build-gcc/gcc'
make[1]: *** [libgcc.a] Error 2
make[1]: Leaving directory `/d/src/build-gcc/gcc'
make: *** [all-gcc] Error 2
### BUG3: It fails to locate values-Xa.o. This is available in /usr/ccs/lib on
### Solaris 2.6 and was correctly copied when I prepared the sysroot. The
### problem appears to be that the compiler does not look for this file there.
### In fact I have hard time figuring out where it expects it to be, so I
### place it in the current working directory at time of failure.
cd gcc
ln -s /apps/gcc/3.3.1-sparc-sun-solaris2.6/sysroot/usr/ccs/lib/values-Xa.o
cd ..
make
# Now it finally builds all the way (small hurrah!)
make install
# (snip, tons of output available upon request, but install completes without a hitch)
# 6. Try compiling Hello World!
cat >hello.c
#include <stdio.h>
int main(int argc, char** argv) { printf("Hello World!\n"); }
export PATH=/apps/gcc/3.3.1-sparc-sun-solaris2.6/bin:/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin:$PATH
sparc-sun-solaris2.6-gcc hello.c
/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-ld: cannot open values-Xa.o: No such file or directory
collect2: ld returned 1 exit status
### Ok, this is a minor nit, lets supplying correct -L flag
sparc-sun-solaris2.6-gcc -v -L/apps/gcc/3.3.1-sparc-sun-solaris2.6/sysroot/usr/ccs/lib hello.c
Reading specs from /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/specs
Configured with: ../gcc-3.3.1/configure --prefix=/apps/gcc/3.3.1-sparc-sun-solaris2.6 --target=sparc-sun-solaris2.6 --enable-languages=c --with-sysroot=/apps/gcc/3.3.1-sparc-sun-solaris2.6/sysroot -with-gnu-as -with-as=/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-as -with-gnu-ld -with-ld=/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-ld
Thread model: posix
gcc version 3.3.1
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/cc1 -quiet -v -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=1 -Dsparc -D__sparc__ -D__sparc -D__GCC_NEW_VARARGS__ -Acpu=sparc -Amachine=sparc hello.c -quiet -dumpbase hello.c -auxbase hello -version -o /tmp/ccHeYLbG.s
GNU C version 3.3.1 (sparc-sun-solaris2.6)
compiled by GNU C version 3.3.1.
GGC heuristics: --param ggc-min-expand=46 --param ggc-min-heapsize=30030
ignoring nonexistent directory "/apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/sys-include"
#include "..." search starts here:
#include <...> search starts here:
/apps/gcc/3.3.1-sparc-sun-solaris2.6/include
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/include
/apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/include
End of search list.
/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-as -V -Qy -s -o /tmp/ccQui2Wj.o /tmp/ccHeYLbG.s
GNU assembler version 2.14.90.0.4.1 (sparc-sun-solaris2.6) using BFD version 2.14.90.0.4.1 20030523
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/collect2 -V -Y P,/usr/ccs/lib:/usr/lib -Qy /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/crt1.o /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/crti.o values-Xa.o /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/crtbegin.o -L/apps/gcc/3.3.1-sparc-sun-solaris2.6/sysroot/usr/ccs/lib -L/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1 -L/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/../../../../sparc-sun-solaris2.6/lib /tmp/ccQui2Wj.o -lgcc -lgcc_eh -lc -lgcc -lgcc_eh -lc /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/crtend.o /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/crtn.o
/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-ld: cannot open values-Xa.o: No such file or directory
GNU ld version 2.14.90.0.4.1 20030523
Supported emulations:
elf32_sparc
collect2: ld returned 1 exit status
### BUG4: values-Xa.o is not found despite the correct -L flag. Apparently it is linked
### in somehow internally before I supplied my -L flag. Try copying values-Xa.o to
### current directory
sparc-sun-solaris2.6-gcc -v hello.c
Reading specs from /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/specs
Configured with: ../gcc-3.3.1/configure --prefix=/apps/gcc/3.3.1-sparc-sun-solaris2.6 --target=sparc-sun-solaris2.6 --enable-languages=c --with-sysroot=/apps/gcc/3.3.1-sparc-sun-solaris2.6/sysroot -with-gnu-as -with-as=/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-as -with-gnu-ld -with-ld=/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-ld
Thread model: posix
gcc version 3.3.1
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/cc1 -quiet -v -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=1 -Dsparc -D__sparc__ -D__sparc -D__GCC_NEW_VARARGS__ -Acpu=sparc -Amachine=sparc hello.c -quiet -dumpbase hello.c -auxbase hello -version -o /tmp/ccGhVoju.s
GNU C version 3.3.1 (sparc-sun-solaris2.6)
compiled by GNU C version 3.3.1.
GGC heuristics: --param ggc-min-expand=46 --param ggc-min-heapsize=30030
ignoring nonexistent directory "/apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/sys-include"
#include "..." search starts here:
#include <...> search starts here:
/apps/gcc/3.3.1-sparc-sun-solaris2.6/include
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/include
/apps/gcc/3.3.1-sparc-sun-solaris2.6/sparc-sun-solaris2.6/include
End of search list.
/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-as -V -Qy -s -o /tmp/ccyocLoV.o /tmp/ccGhVoju.s
GNU assembler version 2.14.90.0.4.1 (sparc-sun-solaris2.6) using BFD version 2.14.90.0.4.1 20030523
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/collect2 -V -Y P,/usr/ccs/lib:/usr/lib -Qy /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/crt1.o /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/crti.o values-Xa.o /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/crtbegin.o -L/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1 -L/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/../../../../sparc-sun-solaris2.6/lib /tmp/ccyocLoV.o -lgcc -lgcc_eh -lc -lgcc -lgcc_eh -lc /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/crtend.o /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/crtn.o
/apps/binutils/2.14.90.0.4.1-sparc-sun-solaris2.6/bin/sparc-sun-solaris2.6-ld: warning: libdl.so.1, needed by /apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/../../../../sparc-sun-solaris2.6/lib/libc.so, not found (try using -rpath or -rpath-link)
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/../../../../sparc-sun-solaris2.6/lib/libc.so: undefined reference to `_dlclose'
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/../../../../sparc-sun-solaris2.6/lib/libc.so: undefined reference to `_dlsym'
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/../../../../sparc-sun-solaris2.6/lib/libc.so: undefined reference to `dlclose'
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/../../../../sparc-sun-solaris2.6/lib/libc.so: undefined reference to `_dlopen'
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/../../../../sparc-sun-solaris2.6/lib/libc.so: undefined reference to `dlopen'
/apps/gcc/3.3.1-sparc-sun-solaris2.6/lib/gcc-lib/sparc-sun-solaris2.6/3.3.1/../../../../sparc-sun-solaris2.6/lib/libc.so: undefined reference to `dlsym'
GNU ld version 2.14.90.0.4.1 20030523
Supported emulations:
elf32_sparc
collect2: ld returned 1 exit status
### Keep on hammeing...
sparc-sun-solaris2.6-gcc -v -Wl,-rpath-link,/apps/gcc/3.3.1-sparc-sun-solaris2.6/sysroot/usr/lib hello.c
### SUCCESS: this produces a dynamically linked executable that runs on target machine
### Conclusion: it can be made to work, but takes far more "fixes" than you would
### expect from a compiler that is supposed to be "production" grade
#EOF
P.S. Submission of this bug cause Netscape-4.72 to hang. Using Lynx now, hope
this comes through.