[Samba] Build error while compiling 4.9.8 when using gcc 4.8.5
Alex Braunegg
alex.braunegg at gmail.com
Sun Jun 2 10:00:10 UTC 2019
Hi all,
In attempting to build Samba 4.9.8 on CentOS 6 using mock, but using Kernel
4.19.46 as a base, Samba failed to compile spitting out the following error:
[ 178/3886] Generating smbd/build_options.c
[ 179/3886] Generating PKGCONFIG_netapi.pc
[ 180/3886] Generating samba-passdb_empty_c
[ 181/3886] Generating PKGCONFIG_smbclient.pc
[ 182/3886] Generating vfs_empty_c
[ 183/3886] Generating nfs41acl-xdr-c
[ 184/3886] Generating nfs41acl-h
rpcgen: C preprocessor failed with exit code 1
rpcgen: C preprocessor failed with exit code 1
fooresult B.1,rfc4518-map
Waf: Leaving directory `/builddir/build/BUILD/samba-4.9.8/bin'
Build failed: -> task failed (err #1):
{task: nfs41acl-h nfs41acl.x -> nfs41acl.h}
make: *** [all] Error 1
RPM build errors:
error: Bad exit status from /var/tmp/rpm-tmp.qXnSSf (%build)
Bad exit status from /var/tmp/rpm-tmp.qXnSSf (%build)
Child return code was: 1
EXCEPTION: Command failed. See logs for output.
# ['bash', '--login', '-c', 'rpmbuild -bb --target x86_64 --nodeps
builddir/build/SPECS/samba.spec']
Traceback (most recent call last):
File "/usr/lib/python2.6/site-packages/mockbuild/trace_decorator.py", line
70, in trace
result = func(*args, **kw)
File "/usr/lib/python2.6/site-packages/mockbuild/util.py", line 359, in do
raise mockbuild.exception.Error, ("Command failed. See logs for
output.\n # %s" % (command,), child.returncode)
Error: Command failed. See logs for output.
# ['bash', '--login', '-c', 'rpmbuild -bb --target x86_64 --nodeps
builddir/build/SPECS/samba.spec']
LEAVE do --> EXCEPTION RAISED
Compiling the same Samba package, but using Kernel 4.4.180, Samba 4.9.8
compiles successfully without issue. The only difference between each build
environment is below:
Works
Fails
kernel-4.4.180-1.el6.src.rpm
kernel-4.19.46-1.el6.src.rpm
gcc-4.6.2-1.el6.src.rpm
gcc-4.8.5-36.el6.src.rpm
binutils-2.23.51.0.1-3.fc18.src.rpm
binutils-2.27-34.base.el7.src.rpm
curl-7.29.0-25.el7.centos.src.rpm
curl-7.29.0-52.el6.src.rpm
python-pycurl-7.19.0-17.el7.src.rpm
python-pycurl-7.19.0-19.el7.src.rpm
pesign-0.106-1.el6.src.rpm
The package upgrades were essentially needed to support the newer 4.19.x
kernel series to compile successfully and to support CONFIG_RETPOLINE
(Compile kernel with the retpoline compiler options to guard against
kernel-to-user data leaks by avoiding speculative indirect branches). In
terms of kernel configuration - these are pretty much the same.
Reading the lists this issue has been seen before
(https://lists.samba.org/archive/samba/2018-December/219926.html), however
on both build systems the following is installed in the build root, and the
'older' gcc (4.6.2) seems to handle what rpcgen is generating.
DEBUG util.py:264: libldb-devel x86_64 1.4.6-1.el6
Local_Repo 71 k
DEBUG util.py:264: libtalloc-devel x86_64 2.1.14-1.el6
Local_Repo 51 k
DEBUG util.py:264: libtdb-devel x86_64 1.3.16-1.el6
Local_Repo 15 k
DEBUG util.py:264: libtevent-devel x86_64 0.9.37-2.el6
Local_Repo 53 k
DEBUG util.py:264: pyldb-devel x86_64 1.4.6-1.el6
Local_Repo 11 k
DEBUG util.py:264: pytalloc-devel x86_64 2.1.14-1.el6
Local_Repo 6.5 k
DEBUG util.py:264: python-tdb x86_64 1.3.16-1.el6
Local_Repo 15 k
DEBUG util.py:264: python-tevent x86_64 0.9.37-2.el6
Local_Repo 13 k
DEBUG util.py:264: libldb x86_64 1.4.6-1.el6
Local_Repo 134 k
DEBUG util.py:264: libtalloc x86_64 2.1.14-1.el6
Local_Repo 28 k
DEBUG util.py:264: libtdb x86_64 1.3.16-1.el6
Local_Repo 43 k
DEBUG util.py:264: libtevent x86_64 0.9.37-2.el6
Local_Repo 34 k
DEBUG util.py:264: pyldb x86_64 1.4.6-1.el6
Local_Repo 39 k
DEBUG util.py:264: pytalloc x86_64 2.1.14-1.el6
Local_Repo 13 k
Just wondering if anyone has any suggestions as where to look further in
solving this.
Best regards,
Alex
More information about the samba
mailing list