Comment # 3 on bug 1203064 from
(In reply to David Disseldorp from comment #2)
...
> # /usr/bin/sar2pcp ./int14.file int14.pcp
> perl: symbol lookup error:
> /usr/lib/perl5/vendor_perl/5.26.1/x86_64-linux-thread-multi/auto/PCP/
> LogImport/LogImport.so: undefined symbol: pmiStart
> 
> # rpm -qf
> /usr/lib/perl5/vendor_perl/5.26.1/x86_64-linux-thread-multi/auto/PCP/
> LogImport/LogImport.so
> perl-PCP-LogImport-5.2.2-1.4.x86_64
> 
> # rpm -qf /usr/lib64/libpcp_import.so.1
> libpcp_import1-5.2.2-1.4.x86_64
> 
> pcp (522)> git blame src/libpcp_import/src/exports
> 35ce669f6a (Nathan Scott 2013-12-03 16:16:53 +1100  1) PCP_IMPORT_1.0 {
> 35ce669f6a (Nathan Scott 2013-12-03 16:16:53 +1100  2)   global:
> 35ce669f6a (Nathan Scott 2013-12-03 16:16:53 +1100  3)     pmiStart;

The required pmiStart symbol is present:

# readelf -aW /usr/lib64/libpcp_import.so.1|grep pmiStart
    84: 0000000000003360  2487 FUNC    GLOBAL DEFAULT   14
pmiStart@@PCP_IMPORT_1.0

But the perl library doesn't have libpcp_import.so as a depedency:
# ldd
/usr/lib/perl5/vendor_perl/5.26.1/x86_64-linux-thread-multi/auto/PCP/LogImport/LogImport.so
        linux-vdso.so.1 (0x00007ffd64a67000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f051d91e000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f051df1c000)

I won't pretend to understand Makefile.PL logic, but
pcp/src/perl/LogImport/Makefile.PL does appear to link against libpcp_import:

 18     $libs = ["-L$ENV{PCP_TOPDIR}/src/libpcp/src
-L$ENV{PCP_TOPDIR}/src/libpcp_import/src -lpcp_import -lpcp"];
...
 32 WriteMakefile(
 33     NAME                => 'PCP::LogImport',
...
 46     LIBS                => $libs,


You are receiving this mail because: