Emu&Co
Active Member
Hallo, wie der Titel schon sagt, würde ich gerne QEmu 0.8.1 für den GP2X porten. Laut Webseite ist ARM als Host Architektur ja kein Problem. Ich habe dieses DevKit (http://archive.gp2x.de/cgi-bin/cfiles.cgi?0,0,0,0,14,1362) verwendet. Erst hatte ich Probleme mit SDL, da ./configure im QEmu Source mir sagte, dass ich es nicht hätte. Das habe ich dann so gelöst:
# SDL probe
sdl_too_old=no
if test -z "$sdl" ; then
sdl_config="sdl-config"
sdl=yes
sdl_static=yes
if test "$mingw32" = "yes" -a ! -z "$cross_prefix" ; then
# win32 cross compilation case
sdl_config="sdl-config"
sdl=yes
Danach sagte es dass es ne SDL hat und die statisch verlinkt. So wie ich es wollte, dann noch die CPU richtig eingestellt... Naja versucht
cpu=armv4b DID Ging nicht (unten)
cpu=armv4l DID Ging auch nicht (unten)
cpu=armv4t Not Supported...
http://mitglied.lycos.de/reimerdaniel/configure
Das passiert
$ make
gcc -Wall -O2 -g -fno-strict-aliasing -I. -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -o dyngen.exe dyngen.c
dyngen.c:1254: error: syntax error before 'ELF_RELOC'
dyngen.c: In function 'arm_emit_ldr_info':
dyngen.c:1264: error: 'p_start' undeclared (first use in this function)
dyngen.c:1264: error: (Each undeclared identifier is reported only once
dyngen.c:1264: error: for each function it appears in.)
dyngen.c:1265: error: 'p_end' undeclared (first use in this function)
dyngen.c:1275: error: 'name' undeclared (first use in this function)
dyngen.c:1275: error: 'start_offset' undeclared (first use in this function)
dyngen.c:1283: error: 'outfile' undeclared (first use in this function)
dyngen.c:1295: error: 'ELF_RELOC' undeclared (first use in this function)
dyngen.c:1295: error: 'rel' undeclared (first use in this function)
dyngen.c:1305: warning: value computed is not used
dyngen.c:1305: warning: value computed is not used
dyngen.c:1310: warning: implicit declaration of function 'ELF32_R_TYPE'
dyngen.c:1311: error: 'R_ARM_ABS32' undeclared (first use in this function)
dyngen.c:1297: warning: unused variable 'p'
dyngen.c: In function 'gen_code':
dyngen.c:2224: warning: implicit declaration of function 'ELFW'
dyngen.c:2224: error: 'R_SYM' undeclared (first use in this function)
dyngen.c:2224: error: 'struct coff_rel' has no member named 'r_info'
dyngen.c:2224: error: called object 'ELFW(<erroneous>)' is not a function
dyngen.c:2229: error: 'struct coff_rel' has no member named 'r_info'
dyngen.c:2233: error: 'R_ARM_ABS32' undeclared (first use in this function)
dyngen.c:2237: error: 'R_ARM_PC24' undeclared (first use in this function)
make: *** [dyngen.exe] Error 1
Was mache ich falsch oder sollte ich anders machen? Kann jemand das mal für mich ausprobieren und mir erzählen wies geht?
Danke schonmal
# SDL probe
sdl_too_old=no
if test -z "$sdl" ; then
sdl_config="sdl-config"
sdl=yes
sdl_static=yes
if test "$mingw32" = "yes" -a ! -z "$cross_prefix" ; then
# win32 cross compilation case
sdl_config="sdl-config"
sdl=yes
Danach sagte es dass es ne SDL hat und die statisch verlinkt. So wie ich es wollte, dann noch die CPU richtig eingestellt... Naja versucht
cpu=armv4b DID Ging nicht (unten)
cpu=armv4l DID Ging auch nicht (unten)
cpu=armv4t Not Supported...
http://mitglied.lycos.de/reimerdaniel/configure
Das passiert
$ make
gcc -Wall -O2 -g -fno-strict-aliasing -I. -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -o dyngen.exe dyngen.c
dyngen.c:1254: error: syntax error before 'ELF_RELOC'
dyngen.c: In function 'arm_emit_ldr_info':
dyngen.c:1264: error: 'p_start' undeclared (first use in this function)
dyngen.c:1264: error: (Each undeclared identifier is reported only once
dyngen.c:1264: error: for each function it appears in.)
dyngen.c:1265: error: 'p_end' undeclared (first use in this function)
dyngen.c:1275: error: 'name' undeclared (first use in this function)
dyngen.c:1275: error: 'start_offset' undeclared (first use in this function)
dyngen.c:1283: error: 'outfile' undeclared (first use in this function)
dyngen.c:1295: error: 'ELF_RELOC' undeclared (first use in this function)
dyngen.c:1295: error: 'rel' undeclared (first use in this function)
dyngen.c:1305: warning: value computed is not used
dyngen.c:1305: warning: value computed is not used
dyngen.c:1310: warning: implicit declaration of function 'ELF32_R_TYPE'
dyngen.c:1311: error: 'R_ARM_ABS32' undeclared (first use in this function)
dyngen.c:1297: warning: unused variable 'p'
dyngen.c: In function 'gen_code':
dyngen.c:2224: warning: implicit declaration of function 'ELFW'
dyngen.c:2224: error: 'R_SYM' undeclared (first use in this function)
dyngen.c:2224: error: 'struct coff_rel' has no member named 'r_info'
dyngen.c:2224: error: called object 'ELFW(<erroneous>)' is not a function
dyngen.c:2229: error: 'struct coff_rel' has no member named 'r_info'
dyngen.c:2233: error: 'R_ARM_ABS32' undeclared (first use in this function)
dyngen.c:2237: error: 'R_ARM_PC24' undeclared (first use in this function)
make: *** [dyngen.exe] Error 1
Was mache ich falsch oder sollte ich anders machen? Kann jemand das mal für mich ausprobieren und mir erzählen wies geht?
Danke schonmal