I have gcc 2.96-69, glibc 2.2-9, kernel 2.4.0 headers, binutils is vanilla from RH7. When I compile crystalspace 0.17.2 I get the following message: g++ -c -o out/LINUX/INTEL/optimize/scan16.o plugins/video/renderer/software/scan16.cpp -Wall -Wunused -W -mcpu=i686 -fno-exceptions -fno-rtti -O6 -fomit-frame-pointer -ffast-math -I. -I./apps -I./include -I./libs -I./plugins -I./support /tmp/ccwQQ3xK.s: Assembler messages: /tmp/ccwQQ3xK.s:16315: Error: local label "6" (instance number 1 of a fb label) is not defined make[1]: *** [out/LINUX/INTEL/optimize/scan16.o] Erreur 1
Just guessing, doesn't it use inline asm which has | characters in it? | cannot be used in inline asm on certain arches (and since the new ia32 backend on ia32 as well) because it separates different asm alternatives (on ia32 it is AT&T and Intel syntax). If this is not the case, please attach here preprocessed source.
Yes it has inline asm with several '|' in it
So change all `|' to something like `or' or whatever, this really will not work with any further gcc version.