I need help porting libsidplay 2.1.0 or 2.1.1


Silent-Hunter

Hardcore Member
Joined
May 29, 2010
Messages
3,485
I get this error here, whether building with cross compiler or not:



Code:
[silent@TERMINAL-BMRF-9 libsidplay]$ make

Making all in unix

make[1]: Entering directory `/home/silent/pandora-dev/sdk_utils/libsidplay/unix'

make  all-am

make[2]: Entering directory `/home/silent/pandora-dev/sdk_utils/libsidplay/unix'

make[2]: Leaving directory `/home/silent/pandora-dev/sdk_utils/libsidplay/unix'

make[1]: Leaving directory `/home/silent/pandora-dev/sdk_utils/libsidplay/unix'

Making all in include

make[1]: Entering directory `/home/silent/pandora-dev/sdk_utils/libsidplay/include'

Making all in sidplay

make[2]: Entering directory `/home/silent/pandora-dev/sdk_utils/libsidplay/include/sidplay'

make[2]: Nothing to be done for `all'.

make[2]: Leaving directory `/home/silent/pandora-dev/sdk_utils/libsidplay/include/sidplay'

make[2]: Entering directory `/home/silent/pandora-dev/sdk_utils/libsidplay/include'

make[2]: Nothing to be done for `all-am'.

make[2]: Leaving directory `/home/silent/pandora-dev/sdk_utils/libsidplay/include'

make[1]: Leaving directory `/home/silent/pandora-dev/sdk_utils/libsidplay/include'

Making all in src

make[1]: Entering directory `/home/silent/pandora-dev/sdk_utils/libsidplay/src'

Making all in c64

make[2]: Entering directory `/home/silent/pandora-dev/sdk_utils/libsidplay/src/c64'

make[2]: Nothing to be done for `all'.

make[2]: Leaving directory `/home/silent/pandora-dev/sdk_utils/libsidplay/src/c64'

Making all in mos6510

make[2]: Entering directory `/home/silent/pandora-dev/sdk_utils/libsidplay/src/mos6510'

if /bin/sh ../../libtool --mode=compile /home/silent/pandora-dev/arm-2010.09/bin/arm-none-linux-gnueabi-g++ -DHAVE_CONFIG_H	-DPANDORA -Os -pipe -march=armv7-a -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -ftree-vectorize -ffast-math -fsingle-precision-constant  -I/home/silent/pandora-dev/arm-2010.09/usr/include -DHAVE_UNIX -I../../include -I../../include/sidplay -MT mos6510.lo -MD -MP -MF ".deps/mos6510.Tpo" -c -o mos6510.lo mos6510.cpp; \

then mv -f ".deps/mos6510.Tpo" ".deps/mos6510.Plo"; else rm -f ".deps/mos6510.Tpo"; exit 1; fi

mkdir .libs

/home/silent/pandora-dev/arm-2010.09/bin/arm-none-linux-gnueabi-g++ -DHAVE_CONFIG_H -DPANDORA -Os -pipe -march=armv7-a -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -ftree-vectorize -ffast-math -fsingle-precision-constant -I/home/silent/pandora-dev/arm-2010.09/usr/include -DHAVE_UNIX -I../../include -I../../include/sidplay -MT mos6510.lo -MD -MP -MF .deps/mos6510.Tpo -c mos6510.cpp  -fPIC -DPIC -o .libs/mos6510.o

In file included from cycle_based/sid6510c.h:87:0,

             	from mos6510.h:69,

             	from mos6510.cpp:70:

cycle_based/mos6510c.h:115:1: error: expected class-name before '{' token

cycle_based/mos6510c.h:120:5: error: 'event_clock_t' does not name a type

cycle_based/mos6510c.h:121:5: error: 'event_clock_t' does not name a type

cycle_based/mos6510c.h:125:5: error: 'EventContext' does not name a type

cycle_based/mos6510c.h:126:5: error: 'event_phase_t' does not name a type

cycle_based/mos6510c.h:127:5: error: 'event_phase_t' does not name a type

cycle_based/mos6510c.h:180:9: error: 'event_clock_t' does not name a type

cycle_based/mos6510c.h:181:9: error: 'event_clock_t' does not name a type

cycle_based/mos6510c.h:324:27: error: expected ')' before '*' token

cycle_based/mos6510c.h: In member function 'void MOS6510::clock()':

cycle_based/mos6510c.h:353:9: error: 'm_stealingClk' was not declared in this scope

cycle_based/mos6510c.h:353:25: error: 'eventContext' was not declared in this scope

cycle_based/mos6510c.h:353:47: error: 'm_phase' was not declared in this scope

cycle_based/mos6510c.h:356:5: error: 'eventContext' was not declared in this scope

cycle_based/mos6510c.h: In member function 'void MOS6510::event()':

cycle_based/mos6510c.h:361:5: error: 'eventContext' was not declared in this scope

cycle_based/mos6510c.h:361:37: error: 'm_phase' was not declared in this scope

In file included from mos6510.cpp:74:0:

cycle_based/mos6510c.i: In member function 'void MOS6510::aecSignal(bool)':

cycle_based/mos6510c.i:241:31: error: 'eventContext' was not declared in this scope

cycle_based/mos6510c.i:241:53: error: 'm_extPhase' was not declared in this scope

cycle_based/mos6510c.i:248:44: error: 'm_stealingClk' was not declared in this scope

cycle_based/mos6510c.i:249:24: error: 'struct MOS6510::<anonymous>' has no member named 'nmiClk'

cycle_based/mos6510c.i:250:24: error: 'struct MOS6510::<anonymous>' has no member named 'irqClk'

cycle_based/mos6510c.i:253:28: error: 'struct MOS6510::<anonymous>' has no member named 'nmiClk'

cycle_based/mos6510c.i:254:28: error: 'struct MOS6510::<anonymous>' has no member named 'nmiClk'

cycle_based/mos6510c.i:255:28: error: 'struct MOS6510::<anonymous>' has no member named 'irqClk'

cycle_based/mos6510c.i:256:28: error: 'struct MOS6510::<anonymous>' has no member named 'irqClk'

cycle_based/mos6510c.i:260:62: error: 'm_phase' was not declared in this scope

cycle_based/mos6510c.i: In member function 'virtual void MOS6510::triggerNMI()':

cycle_based/mos6510c.i:344:16: error: 'struct MOS6510::<anonymous>' has no member named 'nmiClk'

cycle_based/mos6510c.i:344:27: error: 'eventContext' was not declared in this scope

cycle_based/mos6510c.i:344:49: error: 'm_extPhase' was not declared in this scope

cycle_based/mos6510c.i: In member function 'virtual void MOS6510::triggerIRQ()':

cycle_based/mos6510c.i:353:20: error: 'struct MOS6510::<anonymous>' has no member named 'irqClk'

cycle_based/mos6510c.i:353:29: error: 'eventContext' was not declared in this scope

cycle_based/mos6510c.i:353:51: error: 'm_extPhase' was not declared in this scope

cycle_based/mos6510c.i: In member function 'bool MOS6510::interruptPending()':

cycle_based/mos6510c.i:398:32: error: 'eventContext' was not declared in this scope

cycle_based/mos6510c.i:398:65: error: 'struct MOS6510::<anonymous>' has no member named 'nmiClk'

cycle_based/mos6510c.i:398:73: error: 'm_extPhase' was not declared in this scope

cycle_based/mos6510c.i:413:32: error: 'eventContext' was not declared in this scope

cycle_based/mos6510c.i:413:65: error: 'struct MOS6510::<anonymous>' has no member named 'irqClk'

cycle_based/mos6510c.i:413:73: error: 'm_extPhase' was not declared in this scope

cycle_based/mos6510c.i: In member function 'void MOS6510::brk_instr()':

cycle_based/mos6510c.i:800:32: error: 'eventContext' was not declared in this scope

cycle_based/mos6510c.i:800:65: error: 'struct MOS6510::<anonymous>' has no member named 'nmiClk'

cycle_based/mos6510c.i:800:73: error: 'm_extPhase' was not declared in this scope

cycle_based/mos6510c.i: In member function 'void MOS6510::branch2_instr()':

cycle_based/mos6510c.i:1167:16: error: 'struct MOS6510::<anonymous>' has no member named 'irqClk'

cycle_based/mos6510c.i:1168:16: error: 'struct MOS6510::<anonymous>' has no member named 'nmiClk'

cycle_based/mos6510c.i: At global scope:

cycle_based/mos6510c.i:1630:1: error: prototype for 'MOS6510::MOS6510(EventContext*)' does not match any in class 'MOS6510'

cycle_based/mos6510c.h:115:1: error: candidates are: MOS6510::MOS6510(const MOS6510&)

cycle_based/mos6510c.h:115:1: error:             	MOS6510::MOS6510()

cycle_based/mos6510c.i: In member function 'void MOS6510::Initialise()':

cycle_based/mos6510c.i:2468:5: error: 'eventContext' was not declared in this scope

cycle_based/mos6510c.i:2468:37: error: 'm_phase' was not declared in this scope

In file included from mos6510.cpp:78:0:

cycle_based/sid6510c.i: In constructor 'SID6510::SID6510(EventContext*)':

cycle_based/sid6510c.i:152:19: error: no matching function for call to 'MOS6510::MOS6510(EventContext*&)'

cycle_based/mos6510c.h:115:1: note: candidates are: MOS6510::MOS6510()

cycle_based/mos6510c.h:115:1: note:             	MOS6510::MOS6510(const MOS6510&)

cycle_based/sid6510c.i: In member function 'void SID6510::sleep()':

cycle_based/sid6510c.i:249:18: error: 'm_stealingClk' was not declared in this scope

cycle_based/sid6510c.i:249:34: error: 'eventContext' was not declared in this scope

cycle_based/sid6510c.i:249:56: error: 'm_phase' was not declared in this scope

cycle_based/sid6510c.i: In member function 'void SID6510::sid_delay()':

cycle_based/sid6510c.i:383:29: error: 'eventContext' was not declared in this scope

cycle_based/sid6510c.i:383:51: error: 'm_stealingClk' was not declared in this scope

cycle_based/sid6510c.i:383:66: error: 'm_phase' was not declared in this scope

cycle_based/sid6510c.i: In member function 'virtual void SID6510::triggerRST()':

cycle_based/sid6510c.i:423:9: error: 'eventContext' was not declared in this scope

cycle_based/sid6510c.i:423:62: error: 'm_phase' was not declared in this scope

cycle_based/sid6510c.i: In member function 'virtual void SID6510::triggerNMI()':

cycle_based/sid6510c.i:435:13: error: 'eventContext' was not declared in this scope

cycle_based/sid6510c.i:435:66: error: 'm_phase' was not declared in this scope

cycle_based/sid6510c.i: In member function 'virtual void SID6510::triggerIRQ()':

cycle_based/sid6510c.i:460:17: error: 'eventContext' was not declared in this scope

cycle_based/sid6510c.i:460:70: error: 'm_phase' was not declared in this scope

mos6510.cpp: In member function 'virtual void MOS6510::DumpState()':

mos6510.cpp:90:13: error: 'm_dbgClk' was not declared in this scope

make[2]: *** [mos6510.lo] Error 1

make[2]: Leaving directory `/home/silent/pandora-dev/sdk_utils/libsidplay/src/mos6510'

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory `/home/silent/pandora-dev/sdk_utils/libsidplay/src'

make: *** [all-recursive] Error 1
 
The code is quite old no? If so, gcc will have changed a fair bit in the meantime, so maybe its fails on something it would have allowed when the code was written. Rather than try updating the code though, why not cheat and steal it from debian? If you download from here: http://packages.debian.org/lenny/armel/libsidplay2/download, open up the deb file using 'ar -x' and then untar the data.tar.gz, this'll give you a file that's very likely to run on the Pandora.
 
The code is quite old no? If so, gcc will have changed a fair bit in the meantime, so maybe its fails on something it would have allowed when the code was written. Rather than try updating the code though, why not cheat and steal it from debian? If you download from here: http://packages.debi...dplay2/download, open up the deb file using 'ar -x' and then untar the data.tar.gz, this'll give you a file that's very likely to run on the Pandora.
Why do they change things like that?
 
Back
Top