Re: Building SID
"Michael Ambrus" <[email protected]> Mon, 26 Feb 2007 20:11:54 +0100
| Newsgroups | gmane.comp.emulators.sid.devel |
|---|---|
| Message-ID | <[email protected]> |
On 2/26/07, Dave Brolley <[email protected]> wrote: > Michael Ambrus wrote: > > I've got the files thanx. They seem broken however.... > > > > The following is the first place where it breaks (I noticed that the > > build system will not respect neither 'make -S' nor 'export > > MAKEFLAGS="-S" && make' - it seems that the recursive build is using > > 'make -k' no matter what I do). > > > > ../../../../src/sid/component/cgen-cpu/sh/sh2.h:16: error: > > 'sh_common_model' was not declared in this scope > > ../../../../src/sid/component/cgen-cpu/sh/sh2.h:16: error: wrong > > number of template arguments (8, should be 5) > Compiles fine for me using > > >> gcc --version > gcc (GCC) 4.1.2 20060612 (prerelease) (GNUPro 06r1) > > I can't tell for sure, because I don't know which file you were > compiling at the time, but it looks to me like sh_common_model is in the > global namespace, so I'm not sure why it can't be found. Perhaps a > Oh sorry, here comes a longer version of the breaking: make[7]: Entering directory `/home/ambrmi09/projects/sid/_BUILD/sid/component/cgen-cpu' if /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../../../src/sid/component/cgen-cpu -I. -I. -I.. -I../../../../src/sid/component/cgen-cpu/arm7t -I../../../../src/sid/component/cgen-cpu/m32r -I../../../../src/sid/component/cgen-cpu/mep -I../../../../src/sid/component/cgen-cpu/mt -I../../../../src/sid/component/cgen-cpu/sh -I../../../../src/sid/component/cgen-cpu/xstormy16 -I../../include -I../../../../src/sid/component/cgen-cpu/../../include -I../../../bfd -I../../../../src/sid/component/cgen-cpu/../../../include -g -O2 -MT compCGEN.lo -MD -MP -MF ".deps/compCGEN.Tpo" -c -o compCGEN.lo ../../../../src/sid/component/cgen-cpu/compCGEN.cxx; \ then mv -f ".deps/compCGEN.Tpo" ".deps/compCGEN.Plo"; else rm -f ".deps/compCGEN.Tpo"; exit 1; fi g++ -DHAVE_CONFIG_H -I. -I../../../../src/sid/component/cgen-cpu -I. -I. -I.. -I../../../../src/sid/component/cgen-cpu/arm7t -I../../../../src/sid/component/cgen-cpu/m32r -I../../../../src/sid/component/cgen-cpu/mep -I../../../../src/sid/component/cgen-cpu/mt -I../../../../src/sid/component/cgen-cpu/sh -I../../../../src/sid/component/cgen-cpu/xstormy16 -I../../include -I../../../../src/sid/component/cgen-cpu/../../include -I../../../bfd -I../../../../src/sid/component/cgen-cpu/../../../include -g -O2 -MT compCGEN.lo -MD -MP -MF .deps/compCGEN.Tpo -c ../../../../src/sid/component/cgen-cpu/compCGEN.cxx -fPIC -DPIC -o .libs/compCGEN.o In file included from ../../../../src/sid/component/cgen-cpu/sh/sh_compact.h:9, from ../../../../src/sid/component/cgen-cpu/sh/sh2.h:9, from ../../../../src/sid/component/cgen-cpu/compCGEN.cxx:40: ../../../../src/sid/component/cgen-cpu/sh/sh.h:98:1: warning: "CGEN_CPU_FPU" redefined In file included from ../../../../src/sid/component/cgen-cpu/compCGEN.cxx:33: ../../../../src/sid/component/cgen-cpu/mep/mep_ext2.h:76:1: warning: this is the location of the previous definition ../../../../src/sid/component/cgen-cpu/sh/sh2.h:16: error: 'sh_common_model' was not declared in this scope ../../../../src/sid/component/cgen-cpu/sh/sh2.h:16: error: wrong number of template arguments (8, should be 5) I.e. the file that breaks the build should be compCGEN.cxx (?). > 'using namespace ::' > > is needed before the declaration of sh2_cpu? > > > > : > > : > > Which leads to this: > > > > : > > : > > ../../../../src/sid/component/cgen-cpu/sh/sh4-nofpu-defs.h:22: error: > > forward declaration of 'class sh4_nofpu::sh4_nofpu_cpu' > This forward declaration is intentional. Any idea why it would not be > allowed? I'm not a C++ expert, but I recognize this (or a seemingly similar issue) from before. I'll have look in my notes (if I can find them) and compare the code with yours. In that particular case it was a syntax change of the standard. But since you're using an even newer version of gcc than I do, then this might not be the case here. /Michael