[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GNUstep 64Bit on CentOS or Solaris
From: |
Richard Frith-Macdonald |
Subject: |
Re: GNUstep 64Bit on CentOS or Solaris |
Date: |
Fri, 23 May 2014 22:34:50 +0100 |
On 23 May 2014, at 18:44, Andreas Höschler <ahoesch@smartsoft.de> wrote:
>
> Linking library libgnustep-base ...
> /usr/bin/ld: obj/libgnustep-base.obj/GSString.m.o: relocation R_X86_64_PC32
> against `GSPrivateHash' can not be used when making a shared object;
> recompile with -fPIC
> /usr/bin/ld: final link failed: Bad value
> collect2: ld returned 1 exit status
> gmake[5]: *** [obj/libgnustep-base.so.1.24.6] Error 1
>
> OK, let's see
>
> make clean
> export CC="gcc -m64 -fPIC"
> make
>
> No avail!?
>
> Compiling file GSFFIInvocation.m ...
> Linking library libgnustep-base ...
> /usr/bin/ld: obj/libgnustep-base.obj/GSString.m.o: relocation R_X86_64_PC32
> against `GSPrivateHash' can not be used when making a shared object;
> recompile with -fPIC
> /usr/bin/ld: final link failed: Bad value
> collect2: ld returned 1 exit status
>
> Any idea?
I've seen that reported before (I forget by whom). It's apparently a
compiler/linker bug on some old redhat/CentOS systems (not a problen on
redhat/centos 6).
The best fix would be to upgrade the operating system (to get compiler/linker
without the bug), but I believe a workaround is to copy the GSPrivateHash code
from GSPrivateHash.m directly into GSString.m
eg change the function declaraction ot be static and #include GSString.m into
the places where it's used/