[CentOS-devel] Cannot recompile CentOS 7 perl srpms from Vault because built files end up in unexpected dirs

Thu Jul 31 18:09:53 UTC 2014
Johnny Hughes <johnny at centos.org>

On 07/31/2014 11:20 AM, Lars Holowko wrote:
> Hi there,
> 
> 
> I am trying to recompile
> http://vault.centos.org/7.0.1406/os/Source/SPackages/rrdtool-1.4.8-8.el7.src.rpm
> to also get the rrdtool-perl sub package for which there are no binaries
> provided. But when it tries to build the perl sub module it fails with:
> 
> 
> writing
> /root/rpmbuild/BUILDROOT/rrdtool-1.4.8-8.el7.centos.x86_64/usr/lib64/python2.7/site-packages/py_rrdtool-0.2.2-py2.7.egg-info
> make[3]: Leaving directory `/root/rpmbuild/BUILD/rrdtool-1.4.8/bindings'
> make[2]: Leaving directory `/root/rpmbuild/BUILD/rrdtool-1.4.8/bindings'
> make[1]: Leaving directory `/root/rpmbuild/BUILD/rrdtool-1.4.8/bindings'
> make[1]: Entering directory `/root/rpmbuild/BUILD/rrdtool-1.4.8'
> make[2]: Entering directory `/root/rpmbuild/BUILD/rrdtool-1.4.8'
> make[2]: Nothing to be done for `install-exec-am'.
> make[2]: Nothing to be done for `install-data-am'.
> make[2]: Leaving directory `/root/rpmbuild/BUILD/rrdtool-1.4.8'
> make[1]: Leaving directory `/root/rpmbuild/BUILD/rrdtool-1.4.8'
> + /usr/bin/install -D -m0755 php4/modules/rrdtool.so
> /root/rpmbuild/BUILDROOT/rrdtool-1.4.8-8.el7.centos.x86_64/usr/lib64/php/modules/rrdtool.so
> + /usr/bin/rm -rf php4/examples/.svn
> + /usr/bin/mkdir -p
> /root/rpmbuild/BUILDROOT/rrdtool-1.4.8-8.el7.centos.x86_64/etc/php.d
> + /usr/bin/cat
> + /usr/bin/mv
> /root/rpmbuild/BUILDROOT/rrdtool-1.4.8-8.el7.centos.x86_64/usr/share/perl5/vendor_perl/RRDp.pm
> /root/rpmbuild/BUILDROOT/rrdtool-1.4.8-8.el7.centos.x86_64/usr/lib64/perl5/vendor_perl/
> /usr/bin/mv: cannot stat
> ‘/root/rpmbuild/BUILDROOT/rrdtool-1.4.8-8.el7.centos.x86_64/usr/share/perl5/vendor_perl/RRDp.pm’:
> No such file or directory
> error: Bad exit status from /var/tmp/rpm-tmp.t4Flhd (%install)
> 
> 
> RPM build errors:
>     Bad exit status from /var/tmp/rpm-tmp.t4Flhd (%install)
> [root at larsbuild7 ~]# 
> 
> 
> I get the similar errors (files getting copied in the wrong directories
> during build time) with other perl srpms.
> 
> e.g.
>  http://vault.centos.org/7.0.1406/os/Source/SPackages/perl-Data-Dumper-2.145-3.el7.src.rpm
> 
> 
> rpmbuild -ba rpm/SPECS/perl-Data-Dumper.spec 
> Executing(%prep): /bin/sh -e /home/lars/rpm/tmp/rpm-tmp.pLTYSe
> + umask 022
> + cd /home/lars/rpm/BUILD
> + cd /home/lars/rpm/BUILD
> + rm -rf Data-Dumper-2.145
> + /usr/bin/gzip -dc /home/lars/rpm/SOURCES/Data-Dumper-2.145.tar.gz
> + /usr/bin/tar -xf -
> + STATUS=0
> + '[' 0 -ne 0 ']'
> + cd Data-Dumper-2.145
> + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
> + sed -i /MAN3PODS/d Makefile.PL
> + exit 0
> Executing(%build): /bin/sh -e /home/lars/rpm/tmp/rpm-tmp.66tgMG
> + umask 022
> + cd /home/lars/rpm/BUILD
> + cd Data-Dumper-2.145
> + perl Makefile.PL INSTALLDIRS=vendor 'OPTIMIZE=-O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
> --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic'
> Checking if your kit is complete...
> Looks good
> Writing Makefile for Data::Dumper
> Writing MYMETA.yml and MYMETA.json
> + make -j12
> /usr/bin/perl /usr/share/perl5/vendor_perl/ExtUtils/xsubpp  -typemap
> /usr/share/perl5/ExtUtils/typemap  Dumper.xs > Dumper.xsc && mv
> Dumper.xsc Dumper.c
> Running Mkbootstrap for Data::Dumper ()
> chmod 644 Dumper.bs
> cp Dumper.bs blib/arch/auto/Data/Dumper/Dumper.bs
> chmod 644 blib/arch/auto/Data/Dumper/Dumper.bs
> cp Dumper.pm blib/lib/Data/Dumper.pm
> gcc -c   -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe
> -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE
> -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2
> -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4
> -grecord-gcc-switches   -m64 -mtune=generic   -DVERSION=\"2.145\"
> -DXS_VERSION=\"2.145\" -fPIC "-I/usr/lib64/perl5/CORE"  -DUSE_PPPORT_H
> Dumper.c
> rm -f blib/arch/auto/Data/Dumper/Dumper.so
> gcc  -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
> -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches
> -m64 -mtune=generic -Wl,-z,relro  Dumper.o  -o
> blib/arch/auto/Data/Dumper/Dumper.so \
>      \
>   
> chmod 755 blib/arch/auto/Data/Dumper/Dumper.so
> Manifying blib/man3/Data::Dumper.3pm
> + exit 0
> Executing(%install): /bin/sh -e /home/lars/rpm/tmp/rpm-tmp.Ltvukd
> + umask 022
> + cd /home/lars/rpm/BUILD
> + '['
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64 '!='
> / ']'
> + rm -rf /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64
> ++ dirname
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64
> + mkdir -p /home/lars/rpm/BUILDROOT
> + mkdir /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64
> + cd Data-Dumper-2.145
> + make pure_install
> DESTDIR=/home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64
> Files found in blib/arch: installing files in blib/lib into architecture
> dependent library tree
> Installing
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/home/lars/perl5/lib/perl5/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.bs
> Installing
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/home/lars/perl5/lib/perl5/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.so
> Installing
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/home/lars/perl5/lib/perl5/x86_64-linux-thread-multi/Data/Dumper.pm
> Installing
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/home/lars/perl5/man/man3/Data::Dumper.3pm
> + find
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64
> -type f -name .packlist -exec rm -f '{}' ';'
> + find
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64
> -type f -name '*.bs' -size 0 -exec rm -f '{}' ';'
> + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/home
> + /usr/lib/rpm/find-debuginfo.sh --strict-build-id -m --run-dwz
> --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 110000000
> /home/lars/rpm/BUILD/Data-Dumper-2.145
> extracting debug info from
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/home/lars/perl5/lib/perl5/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.so
> dwz: Too few files for multifile optimization
> /usr/lib/rpm/sepdebugcrcfix: Updated 1 CRC32s, 0 CRC32s did match.
> 161 blocks
> + /usr/lib/rpm/check-buildroot
> + /usr/lib/rpm/redhat/brp-compress
> + /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip
> + /usr/lib/rpm/brp-python-bytecompile /usr/bin/python 1
> + /usr/lib/rpm/redhat/brp-python-hardlink
> + /usr/lib/rpm/redhat/brp-java-repack-jars
> Executing(%check): /bin/sh -e /home/lars/rpm/tmp/rpm-tmp.mwbkfM
> + umask 022
> + cd /home/lars/rpm/BUILD
> + cd Data-Dumper-2.145
> + make test
> PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e"
> "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
> t/bless.t ..................... ok     
> t/bless_var_method.t .......... ok   
> t/bugs.t ...................... ok     
> t/deparse.t ................... ok   
> t/dumper.t .................... ok     
> t/dumpperl.t .................. ok     
> t/freezer.t ................... ok   
> t/freezer_useperl.t ........... ok   
> t/indent.t .................... ok     
> t/misc.t ...................... ok     
> t/names.t ..................... ok     
> t/overload.t .................. ok   
> t/pair.t ...................... ok   
> t/perl-74170.t ................ ok   
> t/purity_deepcopy_maxdepth.t .. ok     
> t/qr.t ........................ ok   
> t/quotekeys.t ................. ok     
> t/seen.t ...................... ok     
> t/sortkeys.t .................. ok     
> t/sparseseen.t ................ ok   
> t/terse.t ..................... ok   
> t/toaster.t ................... ok   
> t/values.t .................... ok   
> All tests successful.
> Files=23, Tests=647,  1 wallclock secs ( 0.12 usr  0.02 sys +  0.76 cusr
>  0.08 csys =  0.98 CPU)
> Result: PASS
> + exit 0
> Processing files: perl-Data-Dumper-2.145-3.el7.centos.x86_64
> error: File not found by glob:
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/usr/lib64/perl5/vendor_perl/auto/*
> error: File not found by glob:
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/usr/lib64/perl5/vendor_perl/Data*
> error: File not found by glob:
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/usr/share/man/man3/*
> Executing(%doc): /bin/sh -e /home/lars/rpm/tmp/rpm-tmp.TkASco
> + umask 022
> + cd /home/lars/rpm/BUILD
> + cd Data-Dumper-2.145
> +
> DOCDIR=/home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/usr/share/doc/perl-Data-Dumper-2.145
> + export DOCDIR
> + /usr/bin/mkdir -p
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/usr/share/doc/perl-Data-Dumper-2.145
> + cp -pr Changes
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/usr/share/doc/perl-Data-Dumper-2.145
> + cp -pr Todo
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/usr/share/doc/perl-Data-Dumper-2.145
> + exit 0
> 
> 
> RPM build errors:
>     File not found by glob:
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/usr/lib64/perl5/vendor_perl/auto/*
>     File not found by glob:
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/usr/lib64/perl5/vendor_perl/Data*
>     File not found by glob:
> /home/lars/rpm/BUILDROOT/perl-Data-Dumper-2.145-3.el7.centos.x86_64/usr/share/man/man3/*
> [lars at larsbuild7 ~]$ 
> 
> 
> My root user has no .rpmmacros file at all, the lars user has a trivial one:
> 
> [lars at larsbuild7 ~]$ cat .rpmmacros 
> %_topdir /home/lars/rpm
> %_tmppath /home/lars/rpm/tmp
> %_rpmlock_path  /home/lars/rpm/locks/transaction
> %_signature gpg
> %define debug_package %{nil}
> %define __os_install_post %{nil}
> %_rpmlock_path /home/lars/.mk-externals.tmp/transaction
> [lars at larsbuild7 ~]
> 
> 
> I assume I have to set some rpm variables like %perlvendor%, %perlarch%
> or so.
> 
> Any hint?
> 
> Thanks a lot,
> 
> Lars


All our build logs for CentOS 7 are on buildlogs.centos.org ... Here is
the one for rddtool:

http://buildlogs.centos.org/c7.00.02/rrdtool/20140529193001/1.4.8-8.el7.x86_64/




-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: OpenPGP digital signature
URL: <http://lists.centos.org/pipermail/centos-devel/attachments/20140731/574017b5/attachment-0007.sig>