This is the mail archive of the mailing list for the binutils project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

solaris 10 with x86 - cannot currently use GNU ld

It seems that currently the only way to build gcc on solaris 10 on x86 is with version > 4 using the solaris linker as per:


Use this for Solaris 10 or later on x86 and x86-64 systems. This configuration is supported by GCC 4.0 and later versions only.

It is recommended that you configure GCC to use the GNU assembler in /usr/sfw/bin/gas but the Sun linker, using the options --with-gnu-as --with-as=/usr/sfw/bin/gas --without-gnu-ld --with-ld=/usr/ccs/bin/ld.

We would like to move from linux to solaris x86 (with solaris 10). However up until now we have been linking our code using the -( archives -) option of the GNU ld.

While it appeared that /usr/ccs/bin/ld has an equivalent option called -z rescan, in practice it doesn't work properly. Binaries seems to link, but when they run they sometimes core dump due to a static initialization problem. If I take out the -z rescan for a particular binary and reorder the libraries the binary works.

Not using this -( archive -) option is really not an option for us so this is sort of a show stopper.

The real issue is I think that we would like to be able to still use the GNU ld on solaris x86 with solaris 10. Is support for that actively being worked on?

Right now you get the following error when you try to build:

/usr/lib/amd64/crti.o: file not recognized: File format not recognized

I apologize if this is not the appropriate mailing list for this post - if so please direct me to a more appropriate forum. Thanks in advance for your help.

-Matthew Tepel

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]