AlsaMidiDriver.cpp make error

I'm trying to build Hydrogen on SUSE 10.0, and I'm stumped. I have the alsa-dev/alsa packages installed already, I don't know what else to try, someone please help me, I'd love to use this program! Thank you so much for any help.

-----------------------------------------------------------------
Now type make to build Hydrogen.
-----------------------------------------------------------------

make[1]: Entering directory `/home/shane/hydrogen-0.9.3'
g++ -c -pipe -O2 -march=i586 -mtune=i686 -fmessage-length=0 -Wall -D_FORTIFY_SOURCE=2 -g -g -w -O2 -march=i586 -mtune=i686 -fmessage-length=0 -Wall -D_FORTIFY_SOURCE=2 -g -D_REENTRANT -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/lib/qt3/mkspecs/default -I. -I. -Isrc -I/usr/include -I/usr/lib/qt3/include -o src/AlsaMidiDriver.o src/lib/drivers/AlsaMidiDriver.cpp
src/lib/drivers/AlsaMidiDriver.cpp:39: error: expected constructor, destructor, or type conversion before ‘*’ token
src/lib/drivers/AlsaMidiDriver.cpp: In function ‘void* alsaMidiDriver_thread(void*)’:
src/lib/drivers/AlsaMidiDriver.cpp:48: error: ‘AlsaMidiDriver’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:48: error: ‘pDriver’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:48: error: expected primary-expression before ‘)’ token
src/lib/drivers/AlsaMidiDriver.cpp:48: error: expected `;' before ‘param’
src/lib/drivers/AlsaMidiDriver.cpp:51: error: ‘seq_handle’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:57: error: ‘seq_handle’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:57: error: ‘SND_SEQ_OPEN_DUPLEX’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:57: error: ‘snd_seq_open’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:58: error: ‘snd_strerror’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:62: error: ‘seq_handle’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:62: error: ‘snd_seq_set_client_name’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:66: error: ‘SND_SEQ_PORT_CAP_WRITE’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:67: error: ‘SND_SEQ_PORT_CAP_SUBS_WRITE’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:68: error: ‘SND_SEQ_PORT_TYPE_APPLICATION’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:69: error: ‘snd_seq_create_simple_port’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:75: error: ‘snd_seq_client_id’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:89: error: ‘snd_seq_port_subscribe_t’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:89: error: ‘subs’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:90: error: ‘snd_seq_port_subscribe_alloca’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:91: error: ‘snd_seq_addr_t’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:91: error: expected `;' before ‘sender’
src/lib/drivers/AlsaMidiDriver.cpp:93: error: ‘sender’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:95: error: ‘dest’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:99: error: ‘snd_seq_port_subscribe_set_sender’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:100: error: ‘snd_seq_port_subscribe_set_dest’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:103: error: ‘snd_seq_subscribe_port’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:111: error: ‘POLLIN’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:111: error: ‘snd_seq_poll_descriptors_count’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:112: error: invalid application of ‘sizeof’ to incomplete type ‘pollfd’
src/lib/drivers/AlsaMidiDriver.cpp:113: error: ‘snd_seq_poll_descriptors’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:117: error: ‘poll’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:121: error: ‘snd_seq_close’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp: At global scope:
src/lib/drivers/AlsaMidiDriver.cpp:133: error: ‘AlsaMidiDriver’ has not been declared
src/lib/drivers/AlsaMidiDriver.cpp:133: error: ISO C++ forbids declaration of ‘AlsaMidiDriver’ with no type
src/lib/drivers/AlsaMidiDriver.cpp: In function ‘int AlsaMidiDriver()’:
src/lib/drivers/AlsaMidiDriver.cpp:134: error: only constructors take base initializers
src/lib/drivers/AlsaMidiDriver.cpp: At global scope:
src/lib/drivers/AlsaMidiDriver.cpp:142: error: expected constructor, destructor, or type conversion before ‘::’ token
src/lib/drivers/AlsaMidiDriver.cpp:153: error: ‘AlsaMidiDriver’ is not a class or namespace

[cropped]

‘SND_SEQ_PORT_CAP_SUBS_WRITE’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:530: error: ‘snd_seq_port_info_get_name’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:533: error: ‘snd_seq_port_info_get_port’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:535: error: ‘infoLog’ was not declared in this scope
src/lib/drivers/AlsaMidiDriver.cpp:543: error: ‘errorLog’ was not declared in this scope
make[1]: *** [src/AlsaMidiDriver.o] Error 1
make[1]: Leaving directory `/home/shane/hydrogen-0.9.3'
make: *** [hydrogenPlayer] Error 2
install: cannot stat `hydrogen': No such file or directory
make: *** [install] Error 1