[OpenIndiana-discuss] undefined symbol __gnu_cxx::__pool<true>::_M_reserve_block(unsigned int, unsigned int)

Tim Mooney Tim.Mooney at ndsu.edu
Fri Nov 1 17:46:36 UTC 2013


In regard to: Re: [OpenIndiana-discuss] undefined symbol __gnu_cxx::__pool<...:

>> 1) You're trying to create a shared library and some of your object files
>>     didn't get compiled with the PIC flag (is it still -fpic for gcc?  I
>>     typically use Sun Studio, which uses a different flag)
>
> I never use Sun Studio since one cannot compile anything with it.

I've compiled hundreds of opensource packages using Studio.  I don't
build a lot of C++ software, though, for various reasons.

> BTW, I
> had tried
> to compile using the -compat=g option so to produce binaries that would
> work with g++ but this failed also. In fact, it failed to compile qmake!
> So apparently this option is... decorative... But, all files are compiled
> with the PIC flag.
>
>> 2) You successfully built all your objects files as PIC, but you're trying
>>     to link your shared library against some external dependency that
>>     itself isn't all PIC.  This is commonly the case for archive libraries
>>     (e.g. libfoo.a), which is why it sometimes makes sense to compile even
>>     your archive libraries as PIC.
> 
> Well I don't think so. It makes use of some system libraries but these,
> I guess, have been compiled the proper way. So I thing something else is
> causing this problem but I have no idea what it causing it.

Ok, well, be sure to let the list know what the problem was when you
figure it out.

Tim
-- 
Tim Mooney                                             Tim.Mooney at ndsu.edu
Enterprise Computing & Infrastructure                  701-231-1076 (Voice)
Room 242-J6, IACC Building                             701-231-8541 (Fax)
North Dakota State University, Fargo, ND 58105-5164



More information about the OpenIndiana-discuss mailing list