#2109 svn sdcc cannot be compiled on linux

closed
Maarten Brock
assembler (26)
Preprocessor
5
2014-08-23
2012-11-19
No

sdcc svn version cannot be compiled since a while for me. I am trying revision 8224 now.

It;s ubuntu gnu/linux (12.10), 32 bit OS.

for as in sdas/as6808 sdas/as8xcxxx sdas/as8051 sdas/asz80 sdas/asrab sdas/asgb; do make -C $as ; done
make[1]: Entering directory `/home/lgb/src/sdcc-svn/sdas/as6808'
gcc -c -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -DSDCDB -DNOICE -DINDEXLIB -I. -I. -I./../asxxsrc -I./../../support/util -I. -I../.. -I./../../support/util -I. -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -o obj/asout.o ../asxxsrc/asout.c
../asxxsrc/asout.c: In function ‘outrxb’:
../asxxsrc/asout.c:456:16: warning: variable ‘m’ set but not used [-Wunused-but-set-variable]
../asxxsrc/asout.c: At top level:
../asxxsrc/asout.c:805:1: error: conflicting types for ‘outdp’
In file included from ../asxxsrc/asout.c:33:0:
../asxxsrc/asxxxx.h:1203:25: note: previous declaration of ‘outdp’ was here
make[1]: *** [obj/asout.o] Error 1
make[1]: Leaving directory `/home/lgb/src/sdcc-svn/sdas/as6808'
make[1]: Entering directory `/home/lgb/src/sdcc-svn/sdas/as8xcxxx'
gcc -c -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -DSDCDB -DNOICE -DINDEXLIB -I. -I. -I./../asxxsrc -I./../../support/util -I. -I../.. -I./../../support/util -I. -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -o obj/asout.o ../asxxsrc/asout.c
../asxxsrc/asout.c: In function ‘outrxb’:
../asxxsrc/asout.c:456:16: warning: variable ‘m’ set but not used [-Wunused-but-set-variable]
../asxxsrc/asout.c: At top level:
../asxxsrc/asout.c:805:1: error: conflicting types for ‘outdp’
In file included from ../asxxsrc/asout.c:33:0:
../asxxsrc/asxxxx.h:1203:25: note: previous declaration of ‘outdp’ was here
make[1]: *** [obj/asout.o] Error 1
make[1]: Leaving directory `/home/lgb/src/sdcc-svn/sdas/as8xcxxx'
make[1]: Entering directory `/home/lgb/src/sdcc-svn/sdas/as8051'
gcc -c -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -DSDCDB -DNOICE -DINDEXLIB -I. -I. -I./../asxxsrc -I./../../support/util -I. -I../.. -I./../../support/util -I. -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -o obj/asout.o ../asxxsrc/asout.c
../asxxsrc/asout.c: In function ‘outrxb’:
../asxxsrc/asout.c:456:16: warning: variable ‘m’ set but not used [-Wunused-but-set-variable]
../asxxsrc/asout.c: At top level:
../asxxsrc/asout.c:805:1: error: conflicting types for ‘outdp’
In file included from ../asxxsrc/asout.c:33:0:
../asxxsrc/asxxxx.h:1203:25: note: previous declaration of ‘outdp’ was here
make[1]: *** [obj/asout.o] Error 1
make[1]: Leaving directory `/home/lgb/src/sdcc-svn/sdas/as8051'
make[1]: Entering directory `/home/lgb/src/sdcc-svn/sdas/asz80'
gcc -c -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -DSDCDB -DNOICE -DINDEXLIB -I. -I. -I./../asxxsrc -I./../../support/util -I. -I../.. -I./../../support/util -I. -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -o obj/asout.o ../asxxsrc/asout.c
../asxxsrc/asout.c: In function ‘outrxb’:
../asxxsrc/asout.c:456:16: warning: variable ‘m’ set but not used [-Wunused-but-set-variable]
../asxxsrc/asout.c: At top level:
../asxxsrc/asout.c:805:1: error: conflicting types for ‘outdp’
In file included from ../asxxsrc/asout.c:33:0:
../asxxsrc/asxxxx.h:1203:25: note: previous declaration of ‘outdp’ was here
make[1]: *** [obj/asout.o] Error 1
make[1]: Leaving directory `/home/lgb/src/sdcc-svn/sdas/asz80'
make[1]: Entering directory `/home/lgb/src/sdcc-svn/sdas/asrab'
gcc -c -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -DSDCDB -DNOICE -DINDEXLIB -I. -I. -I./../asxxsrc -I./../../support/util -I. -I../.. -I./../../support/util -I. -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -o obj/asout.o ../asxxsrc/asout.c
../asxxsrc/asout.c: In function ‘outrxb’:
../asxxsrc/asout.c:456:16: warning: variable ‘m’ set but not used [-Wunused-but-set-variable]
../asxxsrc/asout.c: At top level:
../asxxsrc/asout.c:805:1: error: conflicting types for ‘outdp’
In file included from ../asxxsrc/asout.c:33:0:
../asxxsrc/asxxxx.h:1203:25: note: previous declaration of ‘outdp’ was here
make[1]: *** [obj/asout.o] Error 1
make[1]: Leaving directory `/home/lgb/src/sdcc-svn/sdas/asrab'
make[1]: Entering directory `/home/lgb/src/sdcc-svn/sdas/asgb'
gcc -c -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -DSDCDB -DNOICE -DINDEXLIB -I. -I. -I./../asxxsrc -I./../../support/util -I. -I../.. -I./../../support/util -I. -fms-extensions -pipe -ggdb -g -O2 -Wall -Wno-parentheses -o obj/asout.o ../asxxsrc/asout.c
../asxxsrc/asout.c: In function ‘outrxb’:
../asxxsrc/asout.c:456:16: warning: variable ‘m’ set but not used [-Wunused-but-set-variable]
../asxxsrc/asout.c: At top level:
../asxxsrc/asout.c:805:1: error: conflicting types for ‘outdp’
In file included from ../asxxsrc/asout.c:33:0:
../asxxsrc/asxxxx.h:1203:25: note: previous declaration of ‘outdp’ was here
make[1]: *** [obj/asout.o] Error 1
make[1]: Leaving directory `/home/lgb/src/sdcc-svn/sdas/asgb'
make: *** [sdcc-as] Error 2

Discussion

  • Maarten Brock
    Maarten Brock
    2012-11-20

    • milestone: --> fixed
    • assigned_to: nobody --> maartenbrock
    • labels: --> assembler
    • status: open --> pending-out-of-date
     
  • Maarten Brock
    Maarten Brock
    2012-11-20

    AFAIK this was fixed in rev. #8180. Please check if asout.c and asxxxx.h are not in an svn conflict state, otherwise locally modified or locked to a previous revision. It currently passes regression tests on all linux snapshot building machines.

     
    • status: pending-out-of-date --> open-out-of-date
     
  • Thanks for your feedback! Interesting. According to SVN no problem with the two files, no locked, the revision of the file is OK (same as the others'), etc. Anyway I re-cehcked-out the SVN repository and I found differences, I don't know why, I am very sure I haven't modified these files (maybe configure script or other part of the build system does this?). I have no idea, but the difference between them is exactly what you mean that it's fixed:

    -extern VOID outdp(struct area *, struct expr *);
    +extern VOID outdp(struct area *carea, struct expr *esp, int r);

    Copying this change fixed the problem. However on the newly checked out source tree I get this error (but I think it's another issue if it's at all):

    make[5]: Entering directory `/home/lgb/src/X/support/sdbinutils/binutils'
    gcc -DHAVE_CONFIG_H -I. -I. -I. -I../bfd -I./../bfd -I./../include -DLOCALEDIR="\"/usr/local/sdcc/share/locale\"" -Dbin_dummy_emulation=bin_vanilla_emulation -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Werror -g -O2 -MT arparse.o -MD -MP -MF .deps/arparse.Tpo -c -o arparse.o `test -f arparse.c || echo ./`arparse.c -Wno-error
    In file included from ./../include/alloca-conf.h:1:0,
    from sysdep.h:25,
    from arparse.y:30:
    ./config.h:7:4: error: #error config.h must be #included before system headers
    make[5]: *** [arparse.o] Error 1

     
  • Maarten Brock
    Maarten Brock
    2012-11-22

    I guess you have another problem in your checkout from subversion or need to reconfigure. Please try the following:
    - Get a fresh checkout from subversion
    - Run the ./configure script (e.g. ./configure -q)
    - Run make (e.g. make >NUL)

     
  • Maarten Brock
    Maarten Brock
    2012-12-12

    • status: open-out-of-date --> pending-out-of-date
     
  • Maarten Brock
    Maarten Brock
    2013-04-27

    • status: pending-out-of-date --> closed
    • Category: --> Preprocessor