Newsgroup: it.comp.os.linux.development
Titolo: Compiling TiMidity++ with --enable-audio=alsa and --enable-alsaseq options on Mandrake 9.1

Hello,
I've seen this problem reported repeatedly on many postings, but I
have been unable to find a solution to it.
I need to use TiMidity++ as an ALSA sequencer client such that it is
used as a softsynth by MIDI sequencers such as Muse or Rosegarden. I
am using Mandrake 9.1, which does not come with TiMidity++ compiled
with the ALSA interface and server options compiled in. I am thus
trying to compile TiMidity++ with these options, but run into the
following errors:
/usr/include/sys/asoundlib.h:1:2: warning: #warning This header is
deprecated, use <alsa/asoundlib.h> instead.
alsaseq_c.c: In function `ctl_pass_playing_list':
alsaseq_c.c:266: storage size of `pinfo' isn't known
alsaseq_c.c:277: `SND_SEQ_OPEN' undeclared (first use in this
function)
alsaseq_c.c:277: (Each undeclared identifier is reported only once
alsaseq_c.c:277: for each function it appears in.)
alsaseq_c.c:277: too few arguments to function `snd_seq_open'
alsaseq_c.c:286: storage size of `pinfo' isn't known
alsaseq_c.c:291: `SND_SEQ_GROUP_DEVICE' undeclared (first use in this
function)
alsaseq_c.c: In function `do_sequencer':
alsaseq_c.c:471: `SND_SEQ_EVENT_PORT_USED' undeclared (first use in
this
function)
alsaseq_c.c:485: `SND_SEQ_EVENT_PORT_UNUSED' undeclared (first use in
this
function)
make[3]: *** [alsaseq_c.o] Error 1
I checked the /usr/include/alsa/seq.h file. I found that these
constants are, indeed, undefined and the syntax for the ALSA functions
is different that the syntax used in the TiMidity alsaseq_c.c file
(among others.)
I may be mistaken here, but from what I understand of ALSA header file
documentation found at 
www.alsa-project.org
, these constants and
syntax were used in an older version of the ALSA libraries. My
question, therefore, is:
1) Is there a version of TiMidity that uses the version of the ALSA
library installed by default on Mandrake 9.1, or, if not,
2) Can anybody point me to a TiMidity RPM that has been compiled with
the --enable-audio=alsa, --enable-alsaseq options (other than the
Planet CCRMA RPM which only works for RedHat Linux, and not Mandrake.)
I would sincerely appreciate any feedback. For your reference, below
is my list of ALSA-related packages:
[root@localhost music]# rpm -qa | grep alsa
alsaplayer-plugin-input-mad-0.99.74-1mdk
libalsa2-devel-0.9.0-0.14rc7mdk
alsa-utils-0.9.0-0.8rc7mdk
alsaplayer-plugin-input-mod-0.99.74-1mdk
alsaplayer-plugin-input-vorbis-0.99.74-1mdk
alsamixergui-0.9.0-0.6rc1_2mdk
alsaplayer-0.99.74-1mdk
alsaplayer-plugin-scopes-0.99.74-1mdk
libalsa-data-0.9.0-0.14rc7mdk
xine-lib-compat-alsa-0.9.13-11mdk
alsaplayer-plugin-output-nas-0.99.74-1mdk
alsaplayer-plugin-output-esound-0.99.74-1mdk
alsaplayer-plugin-input-sndfile-0.99.74-1mdk
alsaplayer-plugin-output-jack-0.99.74-1mdk
alsa-patch-bay-0.5.1-1mdk
libalsa2-0.9.0-0.14rc7mdk
gstreamer-alsa-0.6.0-3mdk
alsaplayer-plugin-input-flac-0.99.74-1mdk
libalsa-oss0-0.9.0-0.4rc1mdk
xine-alsa-1-0.beta4.1mdk
alsaplayer-plugin-ui-gtk-0.99.74-1mdk
xmms-alsa-0.9.7-3mdk
gnome-alsamixer-0.9.3-2mdk
Thank you very much.
Sincerely,
Darien Treize


I wrote an email to the developer of Planet CCRMA and asked him how did he
manage to get TiMidity++ to compile. He gave me this link: http: //www.
timidity.jp/dist/TiMidity++-2.12.0-pre1.tar.bz2
  to compile. It compiles
fine on my Debian woody. Hope this helps.
-- 
           salvuz
     POST FATA RESVRGO
 Linux registered user #291700 | machine #174619