We had a similar problem and found that adding -Wl,-E to ccdlflags in config.sh fixed the problem. ccdlflags=' -Wl,-E -z combreloc' That causes the Perl binary to export its symbols to the Perl modules. If they aren't exported, then no modules that reference symbols in Perl will be able to be loaded. We have had no problems using the GNU assembler and linker, so I don't think you should have to revert back to the Solaris ones in order to get it to work. Cheers, Lyle -----Original Message----- From: charles_cox@xxxxxxx [mailto:charles_cox@xxxxxxx] Sent: Thursday, October 16, 2003 4:56 PM To: gcc-help@xxxxxxxxxxx Subject: compile perl 5.8.1with gcc 3.3 on Solaris 9 I have built gcc 3.3 and have compiled a variety of different packages with it since. Unfortunately I'm having a heck of a time building perl 5.8.1 with it. The Perl install notes claim that there is a problem with the GNU as and ld utilities (I'm using binutils 2.14) which results in problems with Perl's dynamic loading features. Perl will compile successfully, but you get runtime errors like "ld.so.1: ./perl: fatal: relocation error:" Their docs say to add '-B/usr/ccs/bin/' to the gcc command to make it use the Solaris as and ld utils, but this doesn't seem to work. gcc still appears to be using my GNU as and ld anyway. Is there some other way to make gcc use the Solaris as and ld instead of the GNU ones? Does anybody know of some way to make the GNU as and ld build Perl's dynamic loading stuff correctly? If I configure Perl to disable dynamic loading, then it builds and runs fine, but lots of Perl modules that depend on dynamic loading won't run...