DevHeads.net

build failure using boost-python3 on ppc64le

Hash: SHA512

I am trying a scratch build of libpst, and I don't understand the
error.

<a href="http://koji.fedoraproject.org/koji/taskinfo?taskID=35373272" title="http://koji.fedoraproject.org/koji/taskinfo?taskID=35373272">http://koji.fedoraproject.org/koji/taskinfo?taskID=35373272</a>

This package uses boost-python3. On x86, the build log contains:

make[2]: Entering directory
'/builddir/build/BUILD/libpst-0.6.72/python'
/bin/sh ../libtool --tag=CXX --mode=link g++ -O2 -g -pipe -Wall
-Werror=format-security -Wp,-D_FORTIFY_SOURCE=2
-Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong
-grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
-fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection
-module -avoid-version -Wl,-z,relro -Wl,--as-needed -Wl,-z,now
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld -o _libpst.la -rpath
/usr/lib64/python3.7/site-packages python-libpst.lo -lboost_python37
../src/libpst.la -lpthread
libtool: link: g++ -fPIC -DPIC -shared -nostdlib
/usr/lib/gcc/x86_64-redhat-linux/9/../../../../lib64/crti.o
/usr/lib/gcc/x86_64-redhat-linux/9/crtbeginS.o .libs/python-libpst.o
-Wl,-rpath -Wl,/builddir/build/BUILD/libpst-0.6.72/src/.libs
-lboost_python37 ../src/.libs/libpst.so -lpthread
-L/usr/lib/gcc/x86_64-redhat-linux/9
-L/usr/lib/gcc/x86_64-redhat-linux/9/../../../../lib64
-L/lib/../lib64
-L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-redhat-linux/9/../../..
-lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-redhat-linux/9/crtendS.o
/usr/lib/gcc/x86_64-redhat-linux/9/../../../../lib64/crtn.o
-Wl,-z,now
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld -O2 -g
-fstack-protector-strong -grecord-gcc-switches
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
-Wl,-z -Wl,relro -Wl,--as-needed -Wl,-z -Wl,now
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-soname
-Wl,_libpst.so -o .libs/_libpst.so

which works. On ppc, the build log contains:

make[2]: Entering directory
'/builddir/build/BUILD/libpst-0.6.72/python'
/bin/sh ../libtool --tag=CXX --mode=link g++ -O2 -g -pipe -Wall
-Werror=format-security -Wp,-D_FORTIFY_SOURCE=2
-Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong
-grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8
-mtune=power8 -fasynchronous-unwind-tables -fstack-clash-protection
-module -avoid-version -Wl,-z,relro -Wl,--as-needed -Wl,-z,now
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld -o _libpst.la -rpath
/usr/lib64/python3.7/site-packages python-libpst.lo -l
../src/libpst.la
-lpthread
libtool: link: g++ -fPIC -DPIC -shared -nostdlib
/usr/lib/gcc/ppc64le-redhat-linux/9/../../../../lib64/crti.o
/usr/lib/gcc/ppc64le-redhat-linux/9/crtbeginS.o
.libs/python-libpst.o
-Wl,-rpath -Wl,/builddir/build/BUILD/libpst-0.6.72/src/.libs -l
../src/.libs/libpst.so -lpthread
-L/usr/lib/gcc/ppc64le-redhat-linux/9
-L/usr/lib/gcc/ppc64le-redhat-linux/9/../../../../lib64
-L/lib/../lib64
-L/usr/lib/../lib64 -L/usr/lib/gcc/ppc64le-redhat-linux/9/../../..
-lstdc++ -lm -lc -lgcc_s
/usr/lib/gcc/ppc64le-redhat-linux/9/crtendS.o
/usr/lib/gcc/ppc64le-redhat-linux/9/../../../../lib64/crtn.o
-Wl,-z,now
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld -O2 -g
-fstack-protector-strong -grecord-gcc-switches
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8
-mtune=power8 -Wl,-z -Wl,relro -Wl,--as-needed -Wl,-z -Wl,now
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-soname
-Wl,_libpst.so -o .libs/_libpst.so

which fails. Notice that on x86, we have

BUILD/libpst-0.6.72/src/.libs
- -lboost_python37 ../src/.libs/libpst.so -lpthread

but on ppc, we have

BUILD/libpst-0.6.72/src/.libs -l
../src/.libs/libpst.so -lpthread

The -lboost_python37 turns into a plain -l, so the next token
../src/.libs/libpst.so is taken as a library name which fails.

Comments

Re: build failure using boost-python3 on ppc64le

By Leigh Scott at 06/08/2019 - 06:22

I have fixed the issue

<a href="https://src.fedoraproject.org/rpms/libpst/c/b1874bd9f8ba64d3801e1097c031cd75f964dcce?branch=master" title="https://src.fedoraproject.org/rpms/libpst/c/b1874bd9f8ba64d3801e1097c031cd75f964dcce?branch=master">https://src.fedoraproject.org/rpms/libpst/c/b1874bd9f8ba64d3801e1097c031...</a>

and also cleaned up the spec file

<a href="https://src.fedoraproject.org/rpms/libpst/c/34fa7877c3c30b291712914b9834c79154a020cd?branch=master" title="https://src.fedoraproject.org/rpms/libpst/c/34fa7877c3c30b291712914b9834c79154a020cd?branch=master">https://src.fedoraproject.org/rpms/libpst/c/34fa7877c3c30b291712914b9834...</a>
<a href="https://src.fedoraproject.org/rpms/libpst/c/9b598b3e2231c8b6a5b747b6575c7b2ebcb454fa?branch=master" title="https://src.fedoraproject.org/rpms/libpst/c/9b598b3e2231c8b6a5b747b6575c7b2ebcb454fa?branch=master">https://src.fedoraproject.org/rpms/libpst/c/9b598b3e2231c8b6a5b747b6575c...</a>
<a href="https://src.fedoraproject.org/rpms/libpst/c/f8581b4e6c23146385a4b33aab3ac79094b32865?branch=master" title="https://src.fedoraproject.org/rpms/libpst/c/f8581b4e6c23146385a4b33aab3ac79094b32865?branch=master">https://src.fedoraproject.org/rpms/libpst/c/f8581b4e6c23146385a4b33aab3a...</a>

and have submitted f31 & f30 builds to koji