On 11 March 2011 17:06, asyropoulos wrote: > > Well not really! The problem was that at a certain point during > the configuration stage, the Configure script asks the following > question: > > Any special flags to pass to x86_64-pc-solaris2.11-gcc to > create a dynamically loaded library? [ -G -m64 -fstack-protector] Notice that this is passing options to gcc, not ld > And quite naturally (!) one presses enter because Solaris users > know that the Solaris linker accepts the -G option. But for starnge > reason this does not work. One has to enter the following: > > -shared -m64 -fstack-protector > > Now what is even more curious is that the man page of Solaris ld > says among others the following: > > -G > -shared > > In dynamic mode only, produces a shared object. Unde- > fined symbols are allowed. See Chapter 4, Shared > Objects, in Linker and Libraries Guide. But that's the ld man page, not the gcc man page. > In different words, both -G and -shared are supposed to do the For the linker, not for GCC. > same thing but apparently they don't. Maybe, -shared forces GCC > to some things, while the -G thing is passed directly to the linker > without touching anything else. GCC won't pass options through to the linker, and -G means something else to GCC, it probably isn't passed to the linker at all. If you use -shared (which is a valid GCC option) it will pass that option through to ld.