With "portaudio" in USE flags, and "media-libs/portaudio-18.1" installed, vlc-0.8.1-r1 fails: if i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I../.. -DSYS_LINUX -I../../i nclude `top_builddir="../.." ../../vlc-config --cflags plugin portaudio` -Wsign- compare -Wall -O2 -march=pentium4 -mfpmath=sse -msse2 -fprefetch-loop-arrays -pi pe -pipe -MT libportaudio_plugin_a-portaudio.o -MD -MP -MF ".deps/libportaudio_p lugin_a-portaudio.Tpo" \ -c -o libportaudio_plugin_a-portaudio.o `test -f 'portaudio.c' || echo './'`po rtaudio.c; \ then mv -f ".deps/libportaudio_plugin_a-portaudio.Tpo" ".deps/libportaudio_plugi n_a-portaudio.Po"; \ else rm -f ".deps/libportaudio_plugin_a-portaudio.Tpo"; exit 1; \ fi portaudio.c:65: error: syntax error before "PaDeviceIndex" portaudio.c:65: warning: no semicolon at end of struct or union portaudio.c:67: error: syntax error before "i_device_id" portaudio.c:67: warning: type defaults to `int' in declaration of `i_device_id' portaudio.c:67: warning: data definition has no type or storage class portaudio.c:75: error: syntax error before '}' token portaudio.c:124: warning: type defaults to `int' in declaration of `PaStreamCall backTimeInfo' portaudio.c:124: error: syntax error before '*' token portaudio.c: In function `paCallback': portaudio.c:127: error: `p_cookie' undeclared (first use in this function) portaudio.c:127: error: (Each undeclared identifier is reported only once portaudio.c:127: error: for each function it appears in.) portaudio.c:128: error: dereferencing pointer to incomplete type portaudio.c:133: error: `paDate' undeclared (first use in this function) portaudio.c:138: error: dereferencing pointer to incomplete type portaudio.c:142: error: dereferencing pointer to incomplete type portaudio.c:142: error: dereferencing pointer to incomplete type portaudio.c:143: error: dereferencing pointer to incomplete type portaudio.c:145: error: `outputBuffer' undeclared (first use in this function) portaudio.c:146: error: `framesPerBuffer' undeclared (first use in this function ) portaudio.c:146: error: dereferencing pointer to incomplete type portaudio.c:159: error: dereferencing pointer to incomplete type portaudio.c: In function `Open': portaudio.c:177: error: invalid application of `sizeof' to an incomplete type portaudio.c:183: error: dereferencing pointer to incomplete type portaudio.c:184: error: dereferencing pointer to incomplete type portaudio.c:191: error: dereferencing pointer to incomplete type portaudio.c:172: warning: unused variable `i_err' portaudio.c: In function `Close': portaudio.c:308: error: dereferencing pointer to incomplete type portaudio.c:314: error: dereferencing pointer to incomplete type portaudio.c: In function `PAOpenDevice': portaudio.c:352: error: dereferencing pointer to incomplete type portaudio.c:352: warning: implicit declaration of function `Pa_GetDeviceCount' portaudio.c:353: error: dereferencing pointer to incomplete type portaudio.c:355: error: dereferencing pointer to incomplete type portaudio.c:363: error: dereferencing pointer to incomplete type portaudio.c:364: error: dereferencing pointer to incomplete type portaudio.c:374: error: dereferencing pointer to incomplete type portaudio.c:375: error: dereferencing pointer to incomplete type portaudio.c:375: error: dereferencing pointer to incomplete type portaudio.c:377: error: dereferencing pointer to incomplete type portaudio.c:380: error: dereferencing pointer to incomplete type portaudio.c:380: error: dereferencing pointer to incomplete type portaudio.c:382: error: dereferencing pointer to incomplete type portaudio.c:394: error: dereferencing pointer to incomplete type portaudio.c:402: error: dereferencing pointer to incomplete type portaudio.c:413: error: dereferencing pointer to incomplete type portaudio.c:421: error: dereferencing pointer to incomplete type portaudio.c:429: error: dereferencing pointer to incomplete type portaudio.c: In function `PAOpenStream': portaudio.c:460: error: syntax error before '*' token portaudio.c:461: error: `PaStreamParameters' undeclared (first use in this funct ion) portaudio.c:505: error: dereferencing pointer to incomplete type portaudio.c:511: error: dereferencing pointer to incomplete type portaudio.c:512: error: dereferencing pointer to incomplete type portaudio.c:513: error: dereferencing pointer to incomplete type portaudio.c:515: error: dereferencing pointer to incomplete type portaudio.c:518: error: dereferencing pointer to incomplete type portaudio.c:520: error: dereferencing pointer to incomplete type portaudio.c:525: error: `paStreamParameters' undeclared (first use in this funct ion) portaudio.c:525: error: dereferencing pointer to incomplete type portaudio.c:529: error: dereferencing pointer to incomplete type portaudio.c:532: error: dereferencing pointer to incomplete type portaudio.c:534: warning: passing arg 2 of `Pa_OpenStream' makes integer from po inter without a cast portaudio.c:534: warning: passing arg 5 of `Pa_OpenStream' makes pointer from in teger without a cast portaudio.c:534: warning: passing arg 7 of `Pa_OpenStream' makes integer from po inter without a cast portaudio.c:534: warning: passing arg 8 of `Pa_OpenStream' makes integer from po inter without a cast portaudio.c:534: error: too few arguments to function `Pa_OpenStream' portaudio.c:539: error: `paUnanticipatedHostError' undeclared (first use in this function) portaudio.c:541: error: `paLastHostErrorInfo' undeclared (first use in this func tion) portaudio.c:546: error: dereferencing pointer to incomplete type portaudio.c:550: error: dereferencing pointer to incomplete type portaudio.c:554: error: dereferencing pointer to incomplete type make[4]: *** [libportaudio_plugin_a-portaudio.o] Error 1 make[4]: Leaving directory `/var/tmp/portage/vlc-0.8.1-r1/work/vlc-0.8.1/modules /audio_output' make[3]: *** [all-modules] Error 1 make[3]: Leaving directory `/var/tmp/portage/vlc-0.8.1-r1/work/vlc-0.8.1/modules /audio_output' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/vlc-0.8.1-r1/work/vlc-0.8.1/modules ' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/vlc-0.8.1-r1/work/vlc-0.8.1' make: *** [all] Error 2 !!! ERROR: media-video/vlc-0.8.1-r1 failed. !!! Function src_compile, Line 199, Exitcode 2 !!! make of VLC failed ... this only became apparent after upgrading libcdio. Rebuilding portaudio makes no difference to the result. If buildilng VLC without portaudio, it works without problems. (Strangely, VLC was previously built with portaudio support, and worked fine. It now has to be rebuilt because upgrading libcdio broke a plugin, and the same version is now broken. It also has a "threads" flag which I don't recall being there previously, so perhaps the build has been updated without a version bump?) emerge info: Portage 2.0.51.19 (default-linux/x86/2005.0, gcc-3.3.5-20050130, glibc-2.3.4.20041102-r1, 2.6.10-gentoo-r6 i686) ================================================================= System uname: 2.6.10-gentoo-r6 i686 Intel(R) Pentium(R) M processor 1700MHz Gentoo Base System version 1.4.16 Python: dev-lang/python-2.3.4-r1,dev-lang/python-2.2.3-r6 [2.3.4 (#1, Feb 7 2005, 10:05:03)] distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] dev-lang/python: 2.3.4-r1, 2.2.3-r6 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.6.3, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.4, 1.4_p6 sys-devel/binutils: 2.15.92.0.2-r7, 2.15.92.0.2-r1 sys-devel/libtool: 1.5.14 virtual/os-headers: 2.6.8.1-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=pentium4 -mfpmath=sse -msse2 -fprefetch-loop-arrays -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.1/share/config /usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/fax /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control /var/spool/fax/etc" CONFIG_PROTECT_MASK="/etc/X11/xkb /etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -mfpmath=sse -msse2 -fprefetch-loop-arrays -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks fixpackages sandbox sfperms strict userpriv usersandbox" GENTOO_MIRRORS=" http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo http://ftp.heanet.ie/pub/gentoo http://gentoo.osuosl.org http://gentoo.oregonstate.edu " MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 X Xaw3d a52 aac aalib accessibility acl acpi adns alsa arts audiofile avi bash-completion berkdb bitmap-fonts bluetooth bonobo bzip2 caps cdr crypt cscope cups curl dedicated dga directfb divx4linux dv dvd dvdread eds emboss encode esd ethereal evo fam fastcgi fbcon ffmpeg fftw firebird flac flash font-server foomaticdb fortran freetds freetype gb gcj gd gdbm ggi gif glut gnome gnomedb gnutls gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile hal howl icc-pgo imagemagick imap imlib informix innodb ipv6 jack java javamail javascript joystick jpeg junit kde kdeenablefinal kerberos krb4 ladcca lcms ldap libcaca libg++ libgda libwww lua lzo mad maildir mailwrapper matroska mbox mcal memlimit mikmod milter mmap mmx mng mono motif mozilla mp3 mpeg mpi mssql multislot mysql nas ncurses net network nls nntp nptl oci8 odbc ogg oggvorbis openal opengl oss pam pcmcia pcre pdflib perl pic plotutils png pnp portaudio postgres ppds prelude python qdbm qt quicktime readline real samba sasl scanner sdl skey slang slp smartcard sndfile snmp socks5 speex spell sqlite sse sse2 ssl svg svga tcltk tcpd test theora tiff truetype truetype-fonts type1-fonts unicode usb v4l v4l2 vidix vorbis win32codecs wmf wxwindows xanim xface xim xine xinerama xml xml2 xmms xosd xprint xv xvid zeo zlib video_cards_radeon" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Please post the version of portaudio you have currently installed.
Nevermind, I misread it. Did you updated portaudio after merging 0.8.1-r1 before?
Yes - After updating libcdio, one of VLC's default plugins was linked against the older version of the library - so I tried to rebuild the version of VLC that was already installed. I noticed a new "threads" options which was either new, or I'd missed it before. In any case, with or without this in USE, the portaudio.c part of VLC failed. Even though portaudio had not been upgraded recently (and, IIRC, not since VLC was last built) VLC now fails. It works fine with USE="-portaudio". Plus, the version of portaudio I have installed is the stable x86 version - so I'd not anticipate problems here...
same problem here on ppc (however both this version of vlc, and the dependant portaudio are unstable on ppc)
I've removed portaudio useflag as I hasn't paid much attention to that when I firstly submitted the patch which added it. VLC needs portaudio 0.19 which is not in portage yet, so it just can't be built.