Bug 518896

Summary: undefined symbol: Perl_pad_sv
Product: [Fedora] Fedora Reporter: Lennart Poettering <lpoetter>
Component: perlAssignee: Stepan Kasal <kasal>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: kasal, lkundrak, mmaslano, rc040203, tcallawa
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-08-24 10:55:45 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Bug Depends On:    
Bug Blocks: 473303    

Description Lennart Poettering 2009-08-23 22:24:56 EDT
All my Rawhide builds of PulseAudio currently fail due to this:

perl: symbol lookup error: /usr/lib/perl5/vendor_perl/5.10.0/i386-linux-thread-multi/auto/XML/Parser/Expat/Expat.so: undefined symbol: Perl_pad_sv
Comment 1 Marcela Mašláňová 2009-08-24 04:44:32 EDT
This report doesn't give me enough information. I see your last build in koji failed but not because of perl. The perl-XML-Parser wasn't changed for quite long time and also I'm not aware of change of perl api. I suppose the problem is on your side. Did you try rebuild in dist-f12-openssl?
Comment 2 Lennart Poettering 2009-08-24 10:01:30 EDT
Of couse it fails due to perl:

Lines like these:

perl: symbol lookup error: /usr/lib/perl5/vendor_perl/5.10.0/i386-linux-thread-multi/auto/XML/Parser/Expat/Expat.so: undefined symbol: Perl_pad_sv
perl ./xmltoman esdcompat.1.xml > esdcompat.1 || rm -f esdcompat.1

Then cause esdcompat.1 to not exist, which then causes lines like this:

/usr/bin/install: cannot stat `./pulseaudio.1': No such file or directory

Which then causes the build to fail.

Checking on my x86 box the .so is from the perl-XML-Parser package. Reassigning and reopening.
Comment 3 Lennart Poettering 2009-08-24 10:06:42 EDT
BTW, this is an excerpt from:

http://koji.fedoraproject.org/koji/getfile?taskID=1629027&name=build.log

(scroll to the end)
Comment 4 Lubomir Rintel 2009-08-24 10:37:04 EDT
ABI indeed changed due to switch to debugging perl in 5.10.0-78. I think I saw a commit that reverted that this morning -- Lennart, could you please try to reproduce it with more recent perl package?
Comment 5 Lennart Poettering 2009-08-24 10:44:57 EDT
(In reply to comment #4)
> ABI indeed changed due to switch to debugging perl in 5.10.0-78. I think I saw
> a commit that reverted that this morning -- Lennart, could you please try to
> reproduce it with more recent perl package?  

How would I do that?

All I can offer is asking for another build in kji, whcih I now did:

http://koji.fedoraproject.org/koji/taskinfo?taskID=1629127
Comment 6 Tom "spot" Callaway 2009-08-24 10:49:09 EDT
From: makedef.pl

unless ($define{'DEBUGGING'}) {
    skip_symbols [qw(
                    Perl_deb_growlevel
                    Perl_debop
                    Perl_debprofdump
                    Perl_debstack
                    Perl_debstackptrs
                    Perl_pad_sv
                    Perl_sv_peek
                    Perl_hv_assert
                    PL_block_type
                    PL_watchaddr
                    PL_watchok
                    PL_watch_pvx
                    )];
}

perl-5.10.0-79.fc12 doesn't have Perl_pad_sv as a symbol as a result of the DEBUGGING change. perl-XML-Parser just needs a rebuild, I tested it locally to confirm the fix and then kicked off a chainbuild of perl-XML-Parser and pulseaudio to get it in rawhide.

http://koji.fedoraproject.org/koji/taskinfo?taskID=1629150
Comment 7 Stepan Kasal 2009-08-24 10:55:45 EDT
Indeed, the Perl_pad_sv symbol is available in debugging version of perl only.
Unfortunately, the version perl-5.10.0-79 was build without debbugging support.
That build was untagged and the current koji repo contains the older -77 build.

Build perl-5.10.0-80 fixes the problem.

(In reply to comment #5)
> All I can offer is asking for another build in koji, whcih I now did:
> http://koji.fedoraproject.org/koji/taskinfo?taskID=1629127

This should work, the buggy build of perl is no longer in the repo.
Comment 8 Lennart Poettering 2009-08-24 11:48:27 EDT
Yes, I can confirm that it builds fine now. Thanks.