ALSA version for pd-027 (compilation problems)

Karl W. MacMillan karlmac at peabody.jhu.edu
Sun Oct 31 22:08:36 CET 1999


I just upgraded my machine to RedHat 6.1 and installed the ALSA drivers
-version 4.1dfor my trident 4Dwave card (pretty good, cheap PCI sound
card). I then went to compile pd-027.  The compilation went fine (I
specified SOUNDDRIVER=ALSA) and I went to run pd.  I got the "audio i/o
stuck . . . closing audio and midi" error.  I then tried to run pd with
the -alsa option to use the alsa drivers instead of oss emulation, only to
find that the option was not there.  I looked around at the source for a
while to discover that the makefile defines ALSA when compiled with the
SOUNDDRIVER=ALSA set instead of HAVE_ALSA, which is what all the ifdefs
check for.  I changed the makefile and got:

s_main.c: In function `sys_argparse':  
s_main.c:367: warning: implicit declaration of function `sys_linux_alsa'

After removing -Werror from the compile options I got a lot of errrors
that are at the end of this email.  I took a look at alsa headers and it
looks to me that all of the pcm_record* has been changed to
snd_pcm_capture*.  The changelogs for the alsa library stopped being
updated some time ago, so I was wondering for which version of the alsa
drivers the s_linux.c code was written.  I was going to start hacking on
this to get it working with the latest drivers (my card is only supported
with the later releases) but wanted to get some info about this first.  In
particular the error in the makefile.linux seems very odd to me - is
HAVE_ALSA defined somewhere else in the complilation after checking for
the existence of the alsa library?  Any help would be appreciated.

Karl

_____________________________________________________
| Karl W. MacMillan                                 |
| Peabody Institute of the Johns Hopkins University |
| Network and Telecommunications Services           |
| karlmac at peabody.jhu.edu                           |
| 410/659-8297                                      |
-----------------------------------------------------

cc -DPD -DUNIX -Wall -W -Wshadow -Wstrict-prototypes -Wno-unused
-Wno-parentheses -Wno-switch -O2 -funroll-loops -fomit-frame-pointer
-DHAVE_ALSA -I. -c -o ../obj/s_linux.o s_linux.c s_linux.c: In function
`sys_open_audio_and_midi': s_linux.c:139: `srate' undeclared (first use in
this function) s_linux.c:139: (Each undeclared identifier is reported only
once s_linux.c:139: for each function it appears in.)
/usr/include/sys/asoundlib.h: At top level: In file included from
s_linux.c:702: /usr/include/sys/asoundlib.h:358: warning: declaration of
`sync' shadows global declaration /usr/include/sys/asoundlib.h:359:
warning: declaration of `sync' shadows global declaration s_linux.c: In
function `alsa_open_audio': s_linux.c:719: storage size of
`pcm_record_params' isn't known s_linux.c:721: storage size of
`pcm_record_status' isn't known s_linux.c:723: storage size of
`pcm_record_info' isn't known s_linux.c:743: warning: passing arg 1 of
`snd_ctl_open' from incompatible pointer type s_linux.c:756: warning:
comparison between signed and unsigned s_linux.c:759: `sys_outchan'
undeclared (first use in this function) s_linux.c:761: warning: passing
arg 1 of `snd_pcm_open' from incompatible pointer type s_linux.c:776:
`SND_PCM_OPEN_RECORD' undeclared (first use in this function)
s_linux.c:776: warning: passing arg 1 of `snd_pcm_open' from incompatible
pointer type s_linux.c:778: warning: implicit declaration of function
`snd_pcm_record_info' s_linux.c:829: warning: implicit declaration of
function `snd_pcm_record_format' s_linux.c:837: warning: implicit
declaration of function `snd_pcm_record_params' s_linux.c: In function
`alsa_send_dacs': s_linux.c:873: storage size of `pcm_record_status' isn't
known s_linux.c:875: storage size of `pcm_record_info' isn't known
s_linux.c:920: `cp_advance' undeclared (first use in this function)
s_linux.c:923: warning: implicit declaration of function
`snd_pcm_record_status'
make: *** [s_linux.o] Error 1 




More information about the Pd-list mailing list