hello
I encountered the following issue while compiling Dovecot on a Linux system with the Shenwei architecture in China using RPM:
During the build phase, it shows:
Copy Code
checking whether fd passing works... no
configure: error: fd passing is required for Dovecot to work
The version of Dovecot I am compiling is 2.3.16, and the version of the GCC tool is 8.5.0. My spec file's build section is as follows:
Copy Code
%build
# required for fdpass.c line 125,190: dereferencing type-punned pointer will break strict-aliasing rules
%global _hardened_build 1
export CFLAGS="%{__global_cflags} -fno-strict-aliasing -fstack-reuse=none"
export LDFLAGS="-Wl,-z,now -Wl,-z,relro %{?__global_ldflags}"
# el6 autoconf too old to regen; use packaged files (#1082384)
mkdir -p m4
autoreconf -I . -fiv # required for aarch64 support
%configure
INSTALL_DATA="install -c -p -m644"
--with-rundir=%{_rundir}/%{name}
--with-systemd
--docdir=%{_docdir}/%{name}
--disable-static
--disable-rpath
--with-nss
--with-shadow
--with-pam
--with-gssapi=plugin
--with-ldap=plugin
--with-sql=plugin
--with-pgsql
--with-mysql
--with-sqlite
--with-zlib
--with-libcap
--with-lucene
--with-ssl=openssl
--with-ssldir=%{ssldir}
--with-solr
--with-systemdsystemunitdir=%{_unitdir} \
--with-docs \
sed -i 's|/etc/ssl|/etc/pki/dovecot|' doc/mkcert.sh doc/example-config/conf.d/10-ssl.conf make %{?_smp_mflags} # pigeonhole pushd dovecot-2*3-pigeonhole-%{pigeonholever} # required for snapshot [ -f configure ] || autoreconf -fiv [ -f ChangeLog ] || echo "Pigeonhole ChangeLog is not available, yet" >ChangeLog %configure \ INSTALL_DATA="install -c -p -m644" \ --disable-static \ --with-dovecot=../ \ --without-unfinished-features make %{?_smp_mflags} popd