Building pulseaudio 4.0 on my Gentoo Linux fails with i686-pc-linux-gnu-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I../src -I../src/modules -I../src/modules -DPA_ALSA_PATHS_DIR=\"/usr/share/pulseaudio/alsa-mixer/paths\" -DPA_ALSA_PROFILE_SETS_DIR=\"/usr/share/pulseaudio/alsa-mixer/profile-sets\" -DFASTPATH -pthread -DPA_SRCDIR=\"/var/tmp/portage/media-sound/pulseaudio-4.0/work/pulseaudio-4.0/src\" -DPA_BUILDDIR=\"/var/tmp/portage/media-sound/pulseaudio-4.0/work/pulseaudio-4.0/src\" -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -O2 -march=prescott -fomit-frame-pointer -pipe -Wall -W -Wextra -Wno-long-long -Wno-overlength-strings -Wunsafe-loop-optimizations -Wundef -Wformat=2 -Wlogical-op -Wsign-compare -Wformat-security -Wmissing-include-dirs -Wformat-nonliteral -Wpointer-arith -Winit-self -Wdeclaration-after-statement -Wfloat-equal -Wmissing-prototypes -Wredundant-decls -Wmissing-declarations -Wmissing-noreturn -Wshadow -Wendif-labels -Wcast-align -Wstrict-aliasing -Wwrite-strings -Wno-unused-parameter -ffast-math -Wp,-D_FORTIFY_SOURCE=2 -fno-common -fdiagnostics-show-option -c -o pulseaudio-dumpmodules.o `test -f 'daemon/dumpmodules.c' || echo './'`daemon/dumpmodules.c daemon/dumpmodules.c: In function 'is_preloaded': daemon/dumpmodules.c:95:14: error: 'lt__PROGRAM__LTX_preloaded_symbols' undeclared (first use in this function) daemon/dumpmodules.c:95:14: note: each undeclared identifier is reported only once for each function it appears in daemon/dumpmodules.c: In function 'pa_dump_modules': daemon/dumpmodules.c:138:18: error: 'lt__PROGRAM__LTX_preloaded_symbols' undeclared (first use in this function) $ i686-pc-linux-gnu-gcc --version i686-pc-linux-gnu-gcc (Gentoo 4.6.3 p1.9, pie-0.5.2) 4.6.3 I'll happily any information needed. Thanks for considering.
lt__PROGRAM__LTX_preloaded_symbols is declared in ltdl.h. That file obviously exists in your system, otherwise there would have been a different error, but it looks like your ltdl.h doesn't declare that variable. Do you have an ancient version of libltdl or something?
(In reply to comment #1) > lt__PROGRAM__LTX_preloaded_symbols is declared in ltdl.h. That file > obviously exists in your system, otherwise there would have been a different > error, but it looks like your ltdl.h doesn't declare that variable. Do you > have an ancient version of libltdl or something? Well not exactly ancient, but updating libtool from 2.2 to 2.4 fixed it. It builds cleanly now. Thanks!
As of v3.0, we depend on libtool 2.4. The dependencies on Gentoo should be updated to reflect this. For some reason, the LT_PREREQ(2.4) that we have in configure.ac didn't catch this.
Thanks. I've reported this to the Gentoo team.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.