Author Topic: Linux gcc compiling error  (Read 19464 times)

nobody

  • Guest
Linux gcc compiling error
« on: September 26, 2004, 07:51:55 AM »
Compiling nasm 0.98.38 sources on Slackware 10.0, kernel 2.6.7, I come up with some errors that keep Make from working correctly. Does anyone know what might be causing this? The error messages are:

ldrdf.c:1154: warning: string length `516' is greater than the length `509' ISO C89 compilers are required to support

and:

rdoff.c:96: warning: dereferencing type-punned pointer will break strict-aliasing rules

Here are the full outputs of ./configure and make:

---------------------------------------------------------------
bash-2.05b$ ./configure
checking for prefix by checking for nasm... no
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking whether ln -s works... yes
checking whether make sets $(MAKE)... yes
checking for a BSD-compatible install... /usr/bin/ginstall -c
checking for nroff... nroff
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking for an ANSI C-conforming const... yes
checking for size_t... yes
checking for vprintf... yes
checking for _doprnt... no
checking for strcspn... yes
checking for strspn... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating rdoff/Makefile
config.status: creating doc/Makefile
config.status: creating config.h
config.status: executing default-1 commands

------------------------------------------------

bash-2.05b$ make
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o nasm.o nasm.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o nasmlib.o nasmlib.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o float.o float.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o insnsa.o insnsa.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o assemble.o assemble.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o labels.o labels.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o parser.o parser.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o outform.o outform.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o output/outbin.o output/outbin.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o output/outaout.o output/outaout.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o output/outcoff.o output/outcoff.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o output/outelf.o output/outelf.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o output/outobj.o output/outobj.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o output/outas86.o output/outas86.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o output/outrdf2.o output/outrdf2.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o output/outdbg.o output/outdbg.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o output/outieee.o output/outieee.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o preproc.o preproc.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o listing.o listing.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o eval.o eval.c
gcc  -o nasm nasm.o nasmlib.o float.o insnsa.o assemble.o labels.o parser.o outform.o output/outbin.o output/outaout.o output/outcoff.o output/outelf.o output/outobj.o output/outas86.o output/outrdf2.o output/outdbg.o output/outieee.o preproc.o listing.o eval.o
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o ndisasm.o ndisasm.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o disasm.o disasm.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o sync.o sync.c
gcc -c -g -O2 -Wall -ansi -pedantic -DHAVE_CONFIG_H -I. -I.   -o insnsd.o insnsd.c
gcc  -o ndisasm ndisasm.o disasm.o sync.o nasmlib.o insnsd.o
nroff -man nasm.1 > nasm.man
nroff -man ndisasm.1 > ndisasm.man
cd rdoff && make all
make[1]: Entering directory `/home/paulcox/programs/nasm-0.98.38/rdoff'
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. rdfdump.c
gcc  -o rdfdump rdfdump.o
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. ldrdf.c
ldrdf.c: In function `usage':
ldrdf.c:1154: warning: string length `516' is greater than the length `509' ISO C89 compilers are required to support
ldrdf.c:1143: warning: string length `515' is greater than the length `509' ISO C89 compilers are required to support
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. rdoff.c
rdoff.c: In function `membufwrite':
rdoff.c:96: warning: dereferencing type-punned pointer will break strict-aliasing rules
rdoff.c:98: warning: dereferencing type-punned pointer will break strict-aliasing rules
cd .. && make nasmlib.o
make[2]: Entering directory `/home/paulcox/programs/nasm-0.98.38'
make[2]: `nasmlib.o' is up to date.
make[2]: Leaving directory `/home/paulcox/programs/nasm-0.98.38'
cp ../nasmlib.o .
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. symtab.c
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. collectn.c
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. rdlib.c
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. segtab.c
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. hash.c
gcc  -o ldrdf ldrdf.o rdoff.o nasmlib.o symtab.o collectn.o rdlib.o segtab.o hash.o
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. rdx.c
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. rdfload.c
gcc  -o rdx rdx.o rdoff.o rdfload.o symtab.o collectn.o hash.o
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. rdflib.c
gcc  -o rdflib rdflib.o
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. rdf2bin.c
gcc  -o rdf2bin rdf2bin.o rdoff.o rdfload.o symtab.o collectn.o hash.o nasmlib.o
rm -f rdf2com && ln -s rdf2bin rdf2com
gcc -c -g -O2 -Wall -ansi -pedantic -I. -I.. rdf2ihx.c
gcc  -o rdf2ihx rdf2ihx.o rdoff.o rdfload.o symtab.o collectn.o hash.o nasmlib.o
make[1]: Leaving directory `/home/paulcox/programs/nasm-0.98.38/rdoff'