Re: /usr/local/lib/gcc46/gcc/x86_64-portbld-freebsd9.0/4.6.3/../../../libstdc++.a: could not read symbols: Bad value

From: O. Hartmann <ohartman_at_zedat.fu-berlin.de>
Date: Wed, 28 Dec 2011 15:10:12 +0100
Am 12/28/11 14:58, schrieb Kostik Belousov:
> On Wed, Dec 28, 2011 at 11:48:28AM +0100, O. Hartmann wrote:
>> Hello out here.
>>
>> I run into a problem since one of the last portupdates and I do not know
>> whether this has to do with binutils or gcc46 or even FreeBSD 9.0/10.0
>> AMD64.
>>
>> Background:
>> We use a scientific graphical toolset for planetary research called
>> ISIS3, which is provided by the USGS. We patched ISIS3 to run on FreeBSD
>> 8/9/10 so far and it ran well with FreeBSD 8.2-STABLE and 9.0-PRE a
>> couple of weeks ago.
>> On all of my boxes, I do frequently a portupgrade, so I saw binutils got
>> bumped up and gcc 4.6 is also getting really frequently changed these days.
>> After a some portupdates within the last weeks, I just decided to
>> compile ISIS3 again to keep it "fresh and on track", but it won't
>> compile anymore.
>>
>> On all FreeBSD 9.0-PRERELEASE and FreeBSD 10.0-CURRENT (all AMD64 and
>> CLANG built) I receive in some subfolders containing sources the
>> follwoing error:
>>
>> [...]
>>     Adding API object [UniqueIOCachingAlgorithm]
>>     Adding API object [UniversalGroundMap]
>>     Adding API object [UserInterface]
>>     Adding API object [VariableLineScanCameraDetectorMap]
>>     Adding API object [VecFilter]
>>     Adding API object [WorldMapper]
>>     Adding API object [iException]
>>     Adding API object [iString]
>>     Adding API object [iTime]
>>   Working on Package [mex] (11:30:15)
>>     Adding API object [HrscCamera]
>> /usr/local/bin/ld:
>> /usr/local/lib/gcc46/gcc/x86_64-portbld-freebsd9.0/4.6.3/../../../libstdc++.a(functexcept.o):
>> relocation R_X86_64_32 against `std::bad_exception::~bad_exception()'
>> can not be used when making a shared object; recompile with -fPIC
>> /usr/local/lib/gcc46/gcc/x86_64-portbld-freebsd9.0/4.6.3/../../../libstdc++.a:
>> could not read symbols: Bad value
>> collect2: ld returned 1 exit status
>> gmake[5]: *** [plugin] Error 1
>> cp: libHrscCamera.so: No such file or directory
>> gmake[4]: *** [install] Error 1
> The error is completely clear as it is: the build tries to link static
> library libstdc++.so into shared object. This is not supported.

Thanks, Kostik, for the fast response.
The error isn't so clear to me, sorry. I thought libstdc++.a is the
static library and it is taken to be referenced/compiled into a shared
object created by the application I try to compile.

I'm much more confused now, since I thought the last time I compiled
that piece of software, I never got any error like that. Well, clang
fails with some obscure errors on the code itself and I'm unwilling to
correct them, I'll try the legacy gcc 4.2.1 and will report what's
happening.

Thank you very much,

Oliver


Received on Wed Dec 28 2011 - 13:10:14 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:22 UTC