arts refuses to compile with alsa-libs 1.0.6, bombing out with some kind of obscure symbol not found linker error. The error message is: /bin/sh ../libtool --silent --mode=link --tag=CXX i686-pc-linux-gnu-g++ -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -march=athlon-xp -O2 -pipe -fomit-frame-pointer -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -ftemplate-depth-99 -o libartsflow_idl.la -rpath /usr/kde/3.3/lib -no-undefined -Wl,--no-undefined -Wl,--allow-shlib-undefined -version-info 1:0 -L/usr/X11R6/lib -L/usr/qt/3/lib -L/usr/kde/3.3/lib artsflow.lo ../mcop/libmcop.la /bin/sh ../libtool --silent --mode=link --tag=CXX i686-pc-linux-gnu-g++ -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -march=athlon-xp -O2 -pipe -fomit-frame-pointer -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -ftemplate-depth-99 -o libartsflow.la -rpath /usr/kde/3.3/lib -no-undefined -Wl,--no-undefined -Wl,--allow-shlib-undefined -version-info 1:0 synth_play_impl.lo gslschedule.lo audiosubsys.lo pipebuffer.lo convert.lo synth_wave_sin_impl.lo synth_frequency_impl.lo synth_multi_add_impl.lo synth_add_impl.lo synth_mul_impl.lo synth_play_wav_impl.lo stdsynthmodule.lo cache.lo asyncschedule.lo bytestreamtoaudio_impl.lo stereovolumecontrol_impl.lo stereoeffectstack_impl.lo fft.lo stereofftscope_impl.lo virtualports.lo bus.lo audiomanager_impl.lo synth_record_impl.lo resample.lo audioio.lo audioiooss.lo audioioalsa.lo audioioalsa9.lo audioionull.lo audioiolibaudioio.lo audioioesd.lo audioiojack.lo audioiosun.lo audioioaix.lo audioionas.lo cpuinfo.lo audioioossthreaded.lo audiotobytestream_impl.lo audioiosgi.lo audioiocsl.lo audioiomas.lo datahandle_impl.lo ../mcop/libmcop.la libartsflow_idl.la ../flow/gslpp/libgslpp.la -L/usr/X11R6/lib -L/usr/qt/3/lib -L/usr/kde/3.3/lib -L/usr/X11R6/lib -L/usr/qt/3/lib -L/usr/kde/3.3/lib -laudiofile -lasound -lm ../flow/gsl/libgsl.la .libs/audioioalsa9.o(.text+0xb79): In function `Arts::AudioIOALSA::setPcmParams(_snd_pcm*)': : undefined reference to `snd_pcm_hw_params_set_rate_near@ALSA_0.9' .libs/audioioalsa9.o(.text+0xc13): In function `Arts::AudioIOALSA::setPcmParams(_snd_pcm*)': : undefined reference to `snd_pcm_hw_params_set_period_size_near@ALSA_0.9' .libs/audioioalsa9.o(.text+0xc4a): In function `Arts::AudioIOALSA::setPcmParams(_snd_pcm*)': : undefined reference to `snd_pcm_hw_params_set_periods_near@ALSA_0.9' collect2: ld returned 1 exit status make[3]: *** [libartsflow.la] Fehler 1 make[3]: Leaving directory `/home/portage/tmp/portage/arts-1.3.1/work/arts-1.3.1/flow' make[2]: *** [all-recursive] Fehler 1 make[2]: Leaving directory `/home/portage/tmp/portage/arts-1.3.1/work/arts-1.3.1/flow' make[1]: *** [all-recursive] Fehler 1 make[1]: Leaving directory `/home/portage/tmp/portage/arts-1.3.1/work/arts-1.3.1' make: *** [all] Fehler 2 !!! ERROR: kde-base/arts-1.3.1 failed. !!! Function kde_src_compile, Line 142, Exitcode 2 !!! died running emake, kde_src_compile:make !!! If you need support, post the topmost build error, NOT this status message. Reproducible: Always Steps to Reproduce: 1. emerge arts 2. 3. Actual Results: arts breaks off compile, and thus an upgrade to kde 3.3.1 is impossible. Expected Results: arts should have installed successfully. Packages installed: d168 heiko # emerge -pv alsa-lib arts These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild R ] media-libs/alsa-lib-1.0.6 -jack +static 0 kB [ebuild U ] kde-base/arts-1.3.1 [1.3.0] +alsa +arts +artswrappersuid -debug +esd -jack +mad +oggvorbis -xinerama 0 kB Total size of downloads: 0 kB System info: Portage 2.0.51-r2 (default-x86-2004.0, gcc-3.4.2, glibc-2.3.4.20041021-r0, 2.6.9-rc1-love2 i686) ================================================================= System uname: 2.6.9-rc1-love2 i686 AMD Athlon(tm) XP 2400+ Gentoo Base System version 1.6.4 distcc 2.17 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r5 Automake: sys-devel/automake-1.8.5-r1 Binutils: sys-devel/binutils-2.15.92.0.2-r1 Headers: sys-kernel/linux26-headers-2.6.8.1-r1 Libtools: sys-devel/libtool-1.5.2-r5 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3.3/share/config:/usr/kde/3.3/env:/usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/bind /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer" DISTDIR="/home/portage/distfiles" FEATURES="autoaddcvs buildpkg ccache distlocks fixpackages userpriv" GENTOO_MIRRORS="ftp://localhost/gentoo http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror http://gentoo.oregonstate.edu" MAKEOPTS="-j2" PKGDIR="/home/portage/packages" PORTAGE_TMPDIR="/home/portage/tmp" PORTDIR="/home/portage/portage" PORTDIR_OVERLAY="/home/portage/local-portage /home/portage/bmg-main-portage" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="3dnow X Xaw3d aac aalib acl acpi adns aim alsa apache2 arts artswrappersuid async audiofile avi berkdb bitmap-fonts bonobo cddb cdr crypt cscope cups curl dba directfb dnd doc dvd dvdr emacs emacs-w3 encode escreen esd ethereal expat f77 faad fam fastcgi fbcon fbdev ffmpeg fftw flac flash foomaticdb freetds freetype fullrpc gcj gd gdbm geoip gif glade gmp gnome gnomedb gpm gtk gtk2gtkhtml icq idea imagemagick imap imlib imlib2 innodb ipv6 jabber java javascript joystick jpeg justify kde lcms ldap leim libg++ libwww lirc lzw lzw-tiff mad maildir mbox mcal memlimit mikmod mmap mmx mng motif mozilla mozsvg mpeg mpeg4 msn mule music mysql ncurses nls nntp nptl nvidia objc offensive oggvorbis opengl openssh oscar oss pam pcap pcre pda pdflib perl php pic plotutils pngpostgres prelude pwdb python qt quicktime readline ruby samba sasl sdl slang speex spell sqlite sse ssl svga t1lib tcltk tcpd tetex theora tiff timidity transcode truetype type1 unicode usb utf8v4l v4l2 videos vim-with-x wmf wxwindows x86 xine xml xml2 xmms xv xvid yahoo zeo zlib zvbi"
Have you tried downgrading alsa-lib to see if it is actually caused by that version (1.0.6)? Also, have you tried without ccache (FEATURES="-ccache")?
FEATURES="-ccache" doesn't solve the problem. I've also tried reemerging alsa-libs, but this didn't solve the problem either. The "old" version of arts (1.3.0) compiled without problems with the same alsa-libs... I'll check up on the error further during the weekend, maybe I've just got some corrupted headers lying around (because alsa is using version magic for its symbols...) But, on the other hand: heiko@d168 ~ $ readelf -a /usr/lib/libasound.so.2.0.0 | grep "snd_pcm_hw_params_set_per" 65: 00044e70 66 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@ALSA_0.9 84: 00040840 72 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 98: 00040c80 72 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 175: 00040cd0 72 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 204: 00040b30 56 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 224: 000404d0 72 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 313: 00045190 66 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@ALSA_0.9 317: 00040e50 64 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9.0rc4 456: 00040d70 88 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 575: 00040660 64 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9.0rc4 608: 000451e0 66 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@ALSA_0.9 902: 00045500 66 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@ALSA_0.9 915: 00040dd0 64 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9.0rc4 923: 00044ec0 66 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@ALSA_0.9 935: 00040e10 64 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9.0rc4 992: 00045460 66 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@ALSA_0.9 1006: 00040570 72 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 1051: 00040900 98 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 1135: 00040970 142 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 1151: 00040a70 82 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9.0rc4 1214: 000454b0 66 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@ALSA_0.9 1272: 00040620 64 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9.0rc4 1447: 00040d20 72 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 1448: 000405c0 88 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 1460: 00044e20 66 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@ALSA_0.9 1609: 00040a00 102 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9.0rc4 1621: 00045140 66 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@ALSA_0.9 1644: 00040e90 56 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 1675: 00040520 72 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 1782: 000406a0 64 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9.0rc4 1814: 00040890 98 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9 1829: 00040ad0 82 FUNC GLOBAL DEFAULT 11 snd_pcm_hw_params_set_per@@ALSA_0.9.0rc4 So, at least in the library, the function is there (even though readelf cuts off after the so-manieth letter of the name), with the correct version specification...
Are you still having this problem?
I just had a similar problem compiling arts-1.3.2. The odd thing is that I have alsa-lib-1.0.7 installed. [snip] /bin/sh ../libtool --silent --mode=link --tag=CXX g++ -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -O2 -march=pentium3 -mcpu=pentium4 -pipe -fomit-frame-pointer -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -ftemplate-depth-99 -o libartsflow.la -rpath /usr/kde/3.3/lib -no-undefined -Wl,--no-undefined -Wl,--allow-shlib-undefined -version-info 1:0 synth_play_impl.lo gslschedule.lo audiosubsys.lo pipebuffer.lo convert.lo synth_wave_sin_impl.lo synth_frequency_impl.lo synth_multi_add_impl.lo synth_add_impl.lo synth_mul_impl.lo synth_play_wav_impl.lo stdsynthmodule.lo cache.lo asyncschedule.lo bytestreamtoaudio_impl.lo stereovolumecontrol_impl.lo stereoeffectstack_impl.lo fft.lo stereofftscope_impl.lo virtualports.lo bus.lo audiomanager_impl.lo synth_record_impl.lo resample.lo audioio.lo audioiooss.lo audioioalsa.lo audioioalsa9.lo audioionull.lo audioiolibaudioio.lo audioioesd.lo audioiojack.lo audioiosun.lo audioioaix.lo audioionas.lo cpuinfo.lo audioioossthreaded.lo audiotobytestream_impl.lo audioiosgi.lo audioiocsl.lo audioiomas.lo datahandle_impl.lo ../mcop/libmcop.la libartsflow_idl.la ../flow/gslpp/libgslpp.la -L/usr/X11R6/lib -L/usr/qt/3/lib -L/usr/kde/3.3/lib -L/usr/X11R6/lib -L/usr/qt/3/lib -L/usr/kde/3.3/lib -laudiofile -lasound -L/usr/X11R6/lib -L/usr/qt/3/lib -L/usr/kde/3.3/lib -laudio -lXt -lm ../flow/gsl/libgsl.la .libs/audioioalsa9.o(.text+0x1033): In function `Arts::AudioIOALSA::setPcmParams(_snd_pcm*)': : undefined reference to `snd_pcm_hw_params_set_rate_near@ALSA_0.9' .libs/audioioalsa9.o(.text+0x1177): In function `Arts::AudioIOALSA::setPcmParams(_snd_pcm*)': : undefined reference to `snd_pcm_hw_params_set_period_size_near@ALSA_0.9' .libs/audioioalsa9.o(.text+0x11b4): In function `Arts::AudioIOALSA::setPcmParams(_snd_pcm*)': : undefined reference to `snd_pcm_hw_params_set_periods_near@ALSA_0.9' collect2: ld returned 1 exit status make[3]: *** [libartsflow.la] Error 1 make[3]: Leaving directory `/var/tmp/portage/arts-1.3.2/work/arts-1.3.2/flow' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/arts-1.3.2/work/arts-1.3.2/flow' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/arts-1.3.2/work/arts-1.3.2' make: *** [all] Error 2
OK, I've just did the following: # cd /var/db/pkg # emerge -C */*alsa* # emerge -C arts # emerge arts and this time it successfully emerged: media-sound/alsa-headers-1.0.8_rc1 media-libs/alsa-lib-1.0.7 kde-base/arts-1.3.2 A bit drastic, but it fixed my problem :-)
No reply from the original reporter... closing.