x86 build failure : __sync_sub_and_fetch_4

Riccardo Mottola rmottola at opencsw.org
Wed Dec 9 15:17:35 CET 2015


Hi,

while building a new release of gnustep-base, I get this failure on 
unstable9x

Making all for tool autogsdoc...
/opt/csw/bin/gcc-4.6      -m32 -march=i386 -L/opt/csw/GNUstep/lib 
-L/opt/csw/lib -shared-libgcc  -pthread -fexceptions -fgnu-runtime -o 
obj/autogsdoc \
         ./obj/autogsdoc.obj/autogsdoc.m.o 
./obj/autogsdoc.obj/AGSParser.m.o ./obj/autogsdoc.obj/AGSOutput.m.o 
./obj/autogsdoc.obj/AGSIndex.m.o ./obj/autogsdoc.obj/AGSHtml.m.o \
           -L../Source/./obj 
-L/home/rmottola/GNUstep/Library/Libraries 
-L/opt/csw/GNUstep/Local/Library/Libraries 
-L/opt/csw/GNUstep/System/Library/Libraries 
-L/opt/csw/GNUstep/Local/Library/Libraries 
-L/opt/csw/GNUstep/Local/Library/Libraries 
-L/opt/csw/GNUstep/System/Library/Libraries -L/opt/csw/lib 
-lgnustep-base   -lpthread -lobjc   -lsocket -lnsl -lm
Undefined                       first referenced
  symbol                             in file
__sync_sub_and_fetch_4              ../Source/./obj/libgnustep-base.so
__sync_add_and_fetch_4              ../Source/./obj/libgnustep-base.so
ld: fatal: Symbol referencing errors. No output written to obj/autogsdoc

Have you aready experienced something like that?

 From what I could gather from the internet, this is caused by forcing 
i386 because those functions are available only on >= 486 as atomic 
function.
If someone can confirm that this is the problem, is it it reasonable to 
compile for 486 and up only? What's the best way to set march ?

Riccardo


More information about the maintainers mailing list