[linux-audio-user] Timidity and ALSA compile bug!

Reuben Martin MartinR at jbu.edu
Wed Mar 10 15:19:51 EST 2004


Why are you trying to install version 2.9.5? That code in ancient. The ALSA API has changed significantly several times since that code was released. It's no wonder you can't get it to compile. I compiled 2.13.0_rc2 last night. Works great, not to mention it has jack support. http://timidity.sourceforge.net

-Reuben

-----Original Message-----
From: jm [mailto:jm at world.waena.edu]
Sent: Wednesday, March 10, 2004 9:16 AM
Cc: A list for linux audio users
Subject: [linux-audio-user] Timidity and ALSA compile bug!


Hi All,
I have been pulling my hair out trying to compile timidity...

I configure thusly...
./configure --enable-audio-oss --enable-interface=gtk 
--enable-audio=alsa --enable-server --enable-alsaseq

When I 'make' I get the following error.

make[2]: Entering directory `/usr/src/MUSIC/TiMidity++-2.9.5/timidity'
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I..      -I../libarc     
-I../libunimod  -I../interface        -I../utils        
-I/usr/local/include -I/usr/X11R6/include -I/usr/include/gtk-1.2 
-I/usr/include/glib-1.2 -I/usr/lib/glib/include -DAU_ALSA 
-DPKGDATADIR=\"/usr/local/share/timidity\" 
-DPKGLIBDIR=\"/usr/local/lib/timidity\" 
-DDEFAULT_PATH=\"/usr/local/share/timidity\" -DTIMIDITY_OUTPUT_ID=\"s\"  
-O2 -c alsa_a.c
alsa_a.c:52: conflicting types for `snd_pcm_t'
/usr/local/include/alsa/pcm.h:300: previous declaration of `snd_pcm_t'
alsa_a.c: In function `check_sound_cards':
alsa_a.c:116: storage size of `ctl_hw_info' isn't known
alsa_a.c:117: storage size of `pcm_info' isn't known
alsa_a.c:152: warning: passing arg 2 of `snd_ctl_open' makes pointer 
from integer without a cast
alsa_a.c:152: too few arguments to function `snd_ctl_open'
alsa_a.c:186: warning: passing arg 2 of `snd_ctl_pcm_info' makes pointer 
from integer without a cast
alsa_a.c:186: too many arguments to function `snd_ctl_pcm_info'
alsa_a.c:194: `SND_PCM_INFO_PLAYBACK' undeclared (first use in this 
function)
alsa_a.c:194: (Each undeclared identifier is reported only once
alsa_a.c:194: for each function it appears in.)
alsa_a.c: In function `set_playback_info':
alsa_a.c:235: `snd_pcm_playback_info_t' undeclared (first use in this 
function)
alsa_a.c:235: parse error before "pinfo"
alsa_a.c:237: storage size of `pparams' isn't known
alsa_a.c:238: storage size of `pstatus' isn't known
alsa_a.c:248: `pinfo' undeclared (first use in this function)
alsa_a.c:263: `SND_PCM_PINFO_8BITONLY' undeclared (first use in this 
function)
alsa_a.c:265: `SND_PCM_PINFO_16BITONLY' undeclared (first use in this 
function)
alsa_a.c:277: request for member `rate' in something not a structure or 
union
alsa_a.c:298: request for member `channels' in something not a structure 
or union
alsa_a.c:300: request for member `channels' in something not a structure 
or union
alsa_a.c:306: `SND_PCM_FMT_S16_LE' undeclared (first use in this function)
alsa_a.c:311: request for member `format' in something not a structure 
or union
alsa_a.c:311: `SND_PCM_SFMT_S16_LE' undeclared (first use in this function)
alsa_a.c:342: `SND_PCM_FMT_U8' undeclared (first use in this function)
alsa_a.c:347: request for member `format' in something not a structure 
or union
alsa_a.c:347: `SND_PCM_SFMT_U8' undeclared (first use in this function)
alsa_a.c:383: request for member `channels' in something not a structure 
or union
alsa_a.c: In function `open_output':
alsa_a.c:541: `SND_PCM_OPEN_PLAYBACK' undeclared (first use in this 
function)
alsa_a.c:541: warning: passing arg 1 of `snd_pcm_open' from incompatible 
pointer type
alsa_a.c:541: warning: passing arg 2 of `snd_pcm_open' makes pointer 
from integer without a cast
alsa_a.c: In function `acntl':
alsa_a.c:673: storage size of `pstatus' isn't known
make[2]: *** [alsa_a.o] Error 1
make[2]: Leaving directory `/usr/src/MUSIC/TiMidity++-2.9.5/timidity'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/MUSIC/TiMidity++-2.9.5'
make: *** [all-recursive-am] Error 2
[root at innanu /usr/src/MUSIC/TiMidity++-2.9.5]#

I don't get it!  My /usr/include/sound|sys|alsa are all synced (to the 
alsa includes), but those defines dont exist in any of the includes anyway

I can;t ust a compiled RPM as I need the alsa-sequencer part, which 
isn;t compiled into any rpm I have tried (about 10!)

However, in the pcm.h there IS a var called  SND_PCM_FORMAT_U8 vs 
SND_PCM_FMT_U8.  I can't believe this... there must be a version of the 
pch.h that uses the FMT other than FORMAT.  This seems so obvious an 
error I can;t believe I see nothing on the net about it.  In addition 
snd_pcm_t is defined twice... the type in pcm.h conflicting with the 
instance in timidity's alsa_a.c

I have search thru every pcm.h I have.. with no luck.

I found one refernce in google 
(http://cvs.sourceforge.net/viewcvs.py/alsa/alsa-driver/cards/Attic/card-dummy.c?rev=1.15) 
which refers to the card_dummy.c, but I don;t have (want) and dummy as I 
have a real card.

Does anyone have a clue as to why this is and how to fix it?

Thanks...


---------
info
---------
Version: TiMidity++-2.9.5
ALSA: 1.0.3
Linux: 2.6.4-rc2

/etc/modules.conf
---BEGIN---
alias parport_lowlevel parport_pc
alias usb-controller usb-uhci
alias char-major-116 snd
options snd major=116 cards_limit=1
alias sound-slot-0 snd-intel8x0
alias snd-card-0 snd-intel8x0
options snd-intel8x0 index=0 id="ICH" mpu_port=0x330
alias sound-slot-1 snd-card-1
alias snd-card-1 snd-virmidi
alias char-major-14 soundcore
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
alias /dev/mixer snd-mixer-oss
alias /dev/dsp snd-pcm-oss
alias /dev/midi snd-seq-oss
                                                                                            

install sound-slot-0 /sbin/modprobe --ignore-install sound-slot-0 && { 
/bin/aumix-minimal -f
remove sound-slot-0 { /bin/aumix-minimal -f /etc/.aumixrc -S >/dev/null 
2>&1; /bin/true; }; /
                                                                                            

alias eth0 8139too
alias char-major-89 i2c-dev
---END---





More information about the Linux-audio-user mailing list