Bug 73701

Summary: Building pulseaudio 4.0 fails with undeclared identifier in dumpmodules.c
Product: PulseAudio Reporter: Florian Berger <mail>
Component: build-systemAssignee: pulseaudio-bugs
Status: RESOLVED FIXED QA Contact: pulseaudio-bugs
Severity: blocker    
Priority: medium CC: lennart
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Florian Berger 2014-01-16 14:32:14 UTC
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.
Comment 1 Tanu Kaskinen 2014-01-16 16:43:52 UTC
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?
Comment 2 Florian Berger 2014-01-16 19:59:41 UTC
(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!
Comment 3 Arun Raghavan 2014-01-17 03:22:40 UTC
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.
Comment 4 Florian Berger 2014-01-17 09:53:45 UTC
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.