GNOME Bugzilla – Bug 129299
complied errors in alsa-lib-1.0.0-0.rc2
Last modified: 2004-12-22 21:47:04 UTC
gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../gst-libs -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pthread -I/usr/include/gstreamer-0.6 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -DGST_DISABLE_DEPRECATED -g -Wall -O2 -g -pipe -march=i686 -MT libgstalsa_la-gstalsa.lo -MD -MP -MF .deps/libgstalsa_la-gstalsa.Tpo -c gstalsa.c -fPIC -DPIC -o .libs/libgstalsa_la-gstalsa.ogstalsa.c: In function `gst_alsa_set_params': gstalsa.c:1099: error: too few arguments to function `snd_pcm_hw_params_get_channels' gstalsa.c:1143: error: too few arguments to function `snd_pcm_hw_params_get_rate' gstalsa.c:1145: error: too few arguments to function `snd_pcm_hw_params_get_format' gstalsa.c:1147: error: too few arguments to function `snd_pcm_hw_params_get_periods' gstalsa.c:1149: error: too few arguments to function `snd_pcm_hw_params_get_period_size' gstalsa.c:1151: error: too few arguments to function `snd_pcm_hw_params_get_buffer_size' gstalsa.c:1196: error: too few arguments to function `snd_pcm_hw_params_get_access' make[3]: *** [libgstalsa_la-gstalsa.lo] error 1 make[3]: Leaving directory `/usr/src/redhat/BUILD/gst-plugins-0.6.4/ext/alsa' make[2]: *** [all-recursive] error 1 make[2]: Leaving directory `/usr/src/redhat/BUILD/gst-plugins-0.6.4/ext' make[1]: *** [all-recursive] error 1 make[1]: Leaving directory `/usr/src/redhat/BUILD/gst-plugins-0.6.4' make: *** [all] error 2
this PCM API problem was introduced with ALSA v1.0.0-pre1 (so, also exists for pre2 => rc2) but won't change for future versions. seems gst-plugins-alsa uses the old, now deprecated, ALSA PCM API. look at this gentoo bug : http://bugs.gentoo.org/show_bug.cgi?id=35049#c3 and the associated patch : http://bugs.gentoo.org/attachment.cgi?id=21842&action=view so, there are 2 solutions : - the fast one : define those variables and still use old API - the good one : use the new API but as 0.8.x is comming, i won't ask anyone to bother with the second solution
seems the attached patch would do it
Created attachment 22756 [details] [review] make alsa-sink compile with alsa >= 1.0.0-pre1
anyway, with this patch, it would compile and install fine but i've been told that alsa plugin is hardly broken in 0.6.x and after trying using it, i saw it was true. we better : - install OSS emulation for ALSA - give gstreamer 0.7.3 a try and report bugs if any - wait for stable 0.8.x which hopefully is not too far away As ALSA plug-in has been rewritten (once again) in 0.7, lets hope it would work far better.
If you test it out now, we can fix possible bugs *before* 0.8.0. ;).
ok, once i'm back from new year's eve, i'll try to install it (0.7.3 or newer)in my gentoo. (if it does not require some glib 2.3 or some other gnome 2.5 dep) i just hope the existing 0.6.4 eclass/ebuild (gentoo packaging thingy) which is generic for every gst-plugin won't need too much changes. in the end, i could install it the old way, manually doing autogen+configure+make+make install but i prefer using the kind gentoo approch.
We won't fix this. It's fixed properly in HEAD CVS (which will become 0.8.0) and all 0.7.x releases. My reason to not close it is simply so others will not open similar bugs. ;). I'll close this when we've released 0.8.0.
Clsoing anyway... 1.0.0-rc3 compiles fine, so this is obsolete now.