SSSD / sssd

A daemon to manage identity, authentication and authorization for centrally-managed systems.
https://sssd.io
GNU General Public License v3.0
601 stars 247 forks source link

2.7.2: build fails #6218

Closed kloczek closed 2 years ago

kloczek commented 2 years ago

configure output:

+ ./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --disable-silent-rules --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --runstatedir=/run --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info PYTHON=/usr/bin/python3 --disable-polkit-rules-path --disable-rpath --disable-static --enable-files-domain --enable-gss-spnego-for-zero-maxssf --enable-nfsidmaplibdir=/usr/lib64/libnfsidmap --enable-nsslibdir=/usr/lib64 --enable-pammoddir=/usr/lib64/security --enable-sss-default-nss-plugin --enable-systemtap --with-app-libs=/usr/lib64/modules/sssd --with-db-path=/var/lib/sss/db --with-gpo-cache-path=/var/lib/sss/gpo_cache --with-init-dir=/etc/rc.d/init.d --with-initscript=systemd --with-krb5-rcache-dir=/var/cache/krb5rcache --with-mcache-path=/var/lib/sss/mc --without-python2-bindings --with-python3-bindings --with-pid-path=/run --with-pipe-path=/var/lib/sss/pipes --with-pubconf-path=/var/lib/sss/pubconf --with-python3-bindings --with-smb-idmap-interface-version=5 --with-sssd-user=root --with-sudo-lib-path=/usr/lib64/modules/sudo --with-syslog=journald --with-test-dir=/dev/shm
checking for x86_64-redhat-linux-gnu-gcc... /usr/bin/gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether /usr/bin/gcc accepts -g... yes
checking for /usr/bin/gcc option to enable C11 features... none needed
checking whether /usr/bin/gcc understands -c and -o together... yes
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for wchar.h... yes
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether _XOPEN_SOURCE should be defined... no
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports the include directive... yes (GNU style)
checking whether make supports nested variables... yes
checking how to create a pax tar archive... gnutar
checking dependency style of /usr/bin/gcc... none
checking for x86_64-redhat-linux-gnu-ar... /usr/bin/gcc-ar
checking the archiver (/usr/bin/gcc-ar) interface... ar
checking how to run the C preprocessor... /usr/bin/gcc -E
checking build system type... x86_64-redhat-linux-gnu
checking host system type... x86_64-redhat-linux-gnu
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by /usr/bin/gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/gcc-nm
checking the name lister (/usr/bin/gcc-nm) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-redhat-linux-gnu file names to x86_64-redhat-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-redhat-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for x86_64-redhat-linux-gnu-file... no
checking for file... file
checking for x86_64-redhat-linux-gnu-objdump... no
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for x86_64-redhat-linux-gnu-dlltool... no
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for x86_64-redhat-linux-gnu-ar... (cached) /usr/bin/gcc-ar
checking for archiver @FILE support... @
checking for x86_64-redhat-linux-gnu-strip... no
checking for strip... strip
checking for x86_64-redhat-linux-gnu-ranlib... /usr/bin/gcc-ranlib
checking command to parse /usr/bin/gcc-nm output from /usr/bin/gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for x86_64-redhat-linux-gnu-mt... no
checking for mt... no
checking if : is a manifest tool... no
checking for dlfcn.h... yes
checking for objdir... .libs
checking if /usr/bin/gcc supports -fno-rtti -fno-exceptions... no
checking for /usr/bin/gcc option to produce PIC... -fPIC -DPIC
checking if /usr/bin/gcc PIC flag -fPIC -DPIC works... yes
checking if /usr/bin/gcc static flag -static works... no
checking if /usr/bin/gcc supports -c -o file.o... yes
checking if /usr/bin/gcc supports -c -o file.o... (cached) yes
checking whether the /usr/bin/gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for /usr/bin/gcc options needed to detect all undeclared functions... none needed
checking for library containing dlopen... none required
checking for dlerror... yes
checking for shl_load... no
checking for shl_load in -ldld... no
checking for dld_link in -ldld... no
checking whether NLS is requested... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for ld used by GCC... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking for shared library run path origin... done
checking for CFPreferencesCopyAppValue... no
checking for CFLocaleCopyCurrent... no
checking whether NLS is requested... yes
checking for GNU gettext in libc... yes
checking whether to use NLS... yes
checking where the gettext function comes from... libc
checking whether make supports nested variables... (cached) yes
checking for stdint.h... (cached) yes
checking for dlfcn.h... (cached) yes
checking for stdatomic.h... yes
checking for errno_t... no
checking for library containing timer_create... none required
checking for library containing clock_gettime... none required
checking for utimensat... yes
checking for futimens... yes
checking for explicit_bzero... yes
checking for endian.h... yes
checking for sys/endian.h... no
checking for byteswap.h... yes
checking whether byte ordering is bigendian... no
configure: Detected operating system type: fedora
checking for struct ucred.pid... yes
checking for struct ucred.uid... yes
checking for struct ucred.gid... yes
checking for x86_64-redhat-linux-gnu-pkg-config... no
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for POPT... yes
checking for TALLOC... yes
checking for TDB... yes
checking for TEVENT... yes
checking for tevent_set_trace_fd_callback... yes
checking for tevent_set_trace_signal_callback... yes
checking for tevent_set_trace_timer_callback... yes
checking for tevent_set_trace_immediate_callback... yes
checking for tevent_fd_set_tag... yes
checking for tevent_fd_get_tag... yes
checking for tevent_signal_set_tag... yes
checking for tevent_signal_get_tag... yes
checking for tevent_timer_set_tag... yes
checking for tevent_timer_get_tag... yes
checking for tevent_immediate_set_tag... yes
checking for tevent_immediate_get_tag... yes
checking for LDB... yes
checking for ldb.h... yes
checking for ldb_init in -lldb... yes
checking for ldb_module.h... yes
checking for ldb_init in -lldb... (cached) yes
checking feature ldb runtime version check... no
configure: ldb lib directory: /usr/lib64/ldb/modules/ldb
checking for DHASH... yes
checking for INI_CONFIG_V0... yes
checking for INI_CONFIG_V1... yes
checking for INI_CONFIG_V1_1... yes
checking for INI_CONFIG_V1_3... yes
checking for GSSAPI_KRB5... yes
checking for security/pam_appl.h... yes
checking for pam_get_item in -lpam... yes
checking for security/pam_modules.h... yes
checking for pam_get_item in -lpam... (cached) yes
checking for security/pam_ext.h... yes
checking for security/pam_modutil.h... yes
checking for security/pam_misc.h... yes
checking for security/_pam_macros.h... yes
checking for security/openpam.h... no
checking for misc_conv in -lpam_misc... yes
checking for pam_modutil_getlogin... yes
checking for pam_vsyslog... yes
checking for GDM_PAM_EXTENSIONS... yes
checking for ldap_search in -lldap... yes
checking for ber_pvt_opt_on in -llber... yes
checking for ldap_control_create... yes
checking for ldap_init_fd... yes
checking for ldap_create_deref_control_value... yes
checking for ldap_parse_derefresponse_control... yes
checking for ldap_derefresponse_free... yes
checking for ldap_is_ldapc_url... no
checking for struct ldap_conncb.lc_arg... yes
checking for LDAPDerefRes... yes
checking for slapd... no
checking for ldapmodify... yes
checking for PCRE... yes
checking for x86_64-redhat-linux-gnu-krb5-config... no
checking for krb5-config... /usr/bin/krb5-config
checking for working krb5-config... yes
checking for krb5.h... yes
checking for krb5/krb5.h... yes
checking for krb5_ticket_times... yes
checking for krb5_times... no
checking for krb5_trace_info... yes
checking for krb5_get_init_creds_opt_alloc... yes
checking for krb5_get_error_message... yes
checking for krb5_free_unparsed_name... yes
checking for krb5_get_init_creds_opt_set_expire_callback... yes
checking for krb5_get_init_creds_opt_set_fast_ccache_name... yes
checking for krb5_get_init_creds_opt_set_fast_flags... yes
checking for krb5_get_init_creds_opt_set_canonicalize... yes
checking for krb5_get_init_creds_opt_set_responder... yes
checking for krb5_parse_name_flags... yes
checking for krb5_unparse_name_flags... yes
checking for krb5_get_init_creds_opt_set_change_password_prompt... yes
checking for krb5_free_keytab_entry_contents... yes
checking for krb5_kt_free_entry... yes
checking for krb5_princ_realm... no
checking for krb5_get_time_offsets... yes
checking for krb5_principal_get_realm... no
checking for krb5_cc_cache_match... yes
checking for krb5_timestamp_to_sfstring... yes
checking for krb5_set_trace_callback... yes
checking for krb5_find_authdata... yes
checking for krb5_kt_have_content... yes
checking for krb5_cc_get_full_name... yes
checking for krb5_unmarshal_credentials... yes
checking for krb5/locate_plugin.h... yes
checking for krb5/localauth_plugin.h... yes
checking for CARES... yes
checking for long long... yes
checking size of int... 4
checking size of char... 1
checking size of short... 2
checking size of long... 8
checking size of long long... 8
checking size of uid_t... 4
checking size of gid_t... 4
checking size of id_t... 4
checking for uint_t... no
checking for int8_t... yes
checking for uint8_t... yes
checking for int16_t... yes
checking for uint16_t... yes
checking for int32_t... yes
checking for uint32_t... yes
checking for int64_t... yes
checking for uint64_t... yes
checking for size_t... yes
checking for ssize_t... yes
checking size of off_t... 8
checking size of size_t... 8
checking size of ssize_t... 8
checking for intptr_t... yes
checking for uintptr_t... yes
checking for ptrdiff_t... yes
checking for nsupdate... /usr/bin/nsupdate
checking for executable nsupdate... yes
checking for nsupdate 'realm' support'... yes
checking for keyutils.h... no
configure: WARNING: keyutils header files are not available
checking for krad.h... yes
checking for krad_packet_get_attr in -lkrad... yes
checking for SYSTEMD_LOGIN... yes
checking for SYSTEMD_DAEMON... yes
checking for krb5-config... /usr/bin/krb5-config
checking for supported MIT krb5 version... yes
checking for cifsidmap.h... yes
checking for sigprocmask... yes
checking for sigblock... yes
checking for sigaction... yes
checking for getpgrp... yes
checking for prctl... yes
checking for NDR_NBT... yes
checking for NDR_KRB5PAC... yes
checking for SMBCLIENT... yes
checking for SAMBA_UTIL... yes
configure: Samba's idmap interface version: 5
configure: Samba version: 4 16 1
configure: Samba's struct idmap_domain has dom_sid member
configure: Samba has support for new ndr_push_steal_switch_value and ndr_pull_steal_switch_value functions
checking for struct PAC_LOGON_INFO.resource_groups... yes
checking for struct PAC_UPN_DNS_INFO.ex... yes
checking for SASL... yes
checking for NFSIDMAP... yes
checking for nfsidmap_plugin.h... yes
checking for ns_name_compress in -lresolv... yes
checking for fakeroot... yes
checking for JANSSON... yes
checking for CURL... yes
checking for JOSE... no
checking for UUID... yes
checking for unistr.h... yes
checking for u8_strlen in -lunistring... yes
checking for unicase.h... yes
checking for u8_casecmp in -lunistring... yes
checking for unistr.h... (cached) yes
checking for u8_check in -lunistring... yes
checking for LIBNL3... yes
configure: Building with libnl3
checking for nl_socket_add_membership in -lnl-3... yes
checking for nl_socket_modify_cb in -lnl-3... yes
checking for rtnl_route_get_oif in -lnl-3... no
checking for nl_set_passcred in -lnl-3... no
checking for nl_socket_set_passcred in -lnl-3... yes
configure: Will use init script type: systemd
checking for DBUS... yes
checking for dbus_watch_get_unix_fd... yes
checking for DBusBasicValue... yes
checking for xsltproc... /usr/bin/xsltproc
checking for xmllint... /usr/bin/xmllint
checking for Docbook XSL profiling templates in XML catalog... yes
checking for po4a... no
checking for python2... no
checking for python3... yes
checking for python3... /usr/bin/python3
checking whether /usr/bin/python3 version is >= 3.3... yes
checking for /usr/bin/python3 version... 3.8
checking for /usr/bin/python3 platform... linux
checking for GNU default /usr/bin/python3 prefix... ${prefix}
checking for GNU default /usr/bin/python3 exec_prefix... ${exec_prefix}
checking for /usr/bin/python3 script directory (pythondir)... ${PYTHON_PREFIX}/lib/python3.8/site-packages
checking for /usr/bin/python3 extension module directory (pyexecdir)... ${PYTHON_EXEC_PREFIX}/lib64/python3.8/site-packages
checking for python3.8-config... /usr/bin/python3.8-config
checking for headers required to compile python extensions... found
checking for selinux/selinux.h... yes
checking for is_selinux_enabled in -lselinux... yes
checking for semanage/semanage.h... yes
checking for semanage_handle_create in -lsemanage... yes
checking for JOURNALD... yes
checking for CRYPTO... yes
checking for SSL... yes
checking for P11_KIT... yes
checking for sys/inotify.h... yes
checking whether sys/inotify.h actually works... yes
checking whether compiler supports __attribute__((destructor))... yes
checking whether compiler supports __attribute__((format))... yes
checking whether compiler supports __attribute__((warn_unused_result))... yes
checking whether compiler supports __attribute__((fallthrough))... yes
checking for CHECK... no
configure: WARNING: Without the 'CHECK' libraries, you will be unable to run all tests in the 'make check' suite
checking for doxygen... /usr/bin/doxygen
checking for stdarg.h... yes
checking for stddef.h... yes
checking for setjmp.h... yes
checking for CMOCKA... yes
checking for uid_wrapper... yes
checking for nss_wrapper... yes
checking for pam_wrapper... yes
checking for openssl... /usr/bin/openssl
checking for ssh-keygen... /usr/bin/ssh-keygen
checking for -m option of ssh-keygen... yes
configure: Using softhsm2 PKCS11 module: /usr/lib64/softhsm/libsofthsm2.so
checking for softhsm2-util... /usr/bin/softhsm2-util
checking for p11tool... /usr/bin/p11tool
checking for faketime... no
configure: Could not find faketime
configure: WARNING: faketime not available, skiping some tests
checking for valgrind... valgrind
checking for Valgrind tool memcheck... yes
checking for Valgrind tool helgrind... yes
checking for Valgrind tool drd... yes
checking for Valgrind tool sgcheck... no
checking for dtrace... dtrace
checking for sys/sdt.h... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating contrib/sssd.spec
config.status: creating src/examples/rwtab
config.status: creating src/doxy.config
config.status: creating contrib/sssd-pcsc.rules
config.status: creating src/sysv/sssd
config.status: creating src/sysv/gentoo/sssd
config.status: creating src/sysv/gentoo/sssd-kcm
config.status: creating po/Makefile.in
config.status: WARNING:  'po/Makefile.in.in' seems to ignore the --datarootdir setting
config.status: creating src/man/Makefile
config.status: creating src/tests/cwrap/Makefile
config.status: creating src/tests/intg/Makefile
config.status: creating src/tests/test_CA/Makefile
config.status: creating src/tests/test_CA/intermediate_CA/Makefile
config.status: creating src/tests/test_ECC_CA/Makefile
config.status: creating src/lib/ipa_hbac/ipa_hbac.pc
config.status: creating src/lib/ipa_hbac/ipa_hbac.doxy
config.status: creating src/lib/idmap/sss_idmap.pc
config.status: creating src/lib/idmap/sss_idmap.doxy
config.status: creating src/lib/certmap/sss_certmap.pc
config.status: creating src/lib/certmap/sss_certmap.doxy
config.status: creating src/sss_client/idmap/sss_nss_idmap.pc
config.status: creating src/sss_client/idmap/sss_nss_idmap.doxy
config.status: creating src/lib/sifp/sss_simpleifp.pc
config.status: creating src/lib/sifp/sss_simpleifp.doxy
config.status: creating src/config/setup.py
config.status: creating src/systemtap/sssd.stp
config.status: creating src/tools/analyzer/Makefile
config.status: creating src/config/SSSDConfig/__init__.py
config.status: WARNING:  'src/config/SSSDConfig/__init__.py.in' seems to ignore the --datarootdir setting
config.status: creating sbus_generate.sh
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default-1 commands
config.status: creating po/POTFILES
config.status: creating po/Makefile

And build fails on:

/usr/bin/gcc -DHAVE_CONFIG_H -I.  -Wall -I.. -I./src/sss_client -I./src -I.      -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include     -I/usr/include/libnl3     -DLIBDIR=\"/usr/lib64\" -DVARDIR=\"/var\" -DRUNDIR=\"/run\" -DSSS_STATEDIR=\"/var/lib/sss\" -DSYSCONFDIR=\"/etc\" -DSHLIBEXT=\"\" -DSSSDDATADIR=\"/usr/share/sssd\" -DSSSD_LIBEXEC_PATH=\"/usr/libexec/sssd\" -DSSSD_CONF_DIR=\"/etc/sssd\" -DSSS_NSS_MCACHE_DIR=\"/var/lib/sss/mc\" -DSSS_NSS_SOCKET_NAME=\"/var/lib/sss/pipes/nss\" -DSSS_PAM_SOCKET_NAME=\"/var/lib/sss/pipes/pam\" -DSSS_PAC_SOCKET_NAME=\"/var/lib/sss/pipes/pac\" -DSSS_PAM_PRIV_SOCKET_NAME=\"/var/lib/sss/pipes/private/pam\" -DSSS_SUDO_SOCKET_NAME=\"/var/lib/sss/pipes/sudo\" -DSSS_AUTOFS_SOCKET_NAME=\"/var/lib/sss/pipes/autofs\" -DSSS_SSH_SOCKET_NAME=\"/var/lib/sss/pipes/ssh\" -DLOCALEDIR=\"/usr/share/locale\" -DBASE_FILE_STEM=\"oidc_child-oidc_child_json\"    -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wundef -Werror-implicit-function-declaration -Winit-self -Wmissing-include-dirs -fno-strict-aliasing -std=gnu99      -O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -o src/oidc_child/oidc_child-oidc_child_json.o `test -f 'src/oidc_child/oidc_child_json.c' || echo './'`src/oidc_child/oidc_child_json.c
src/oidc_child/oidc_child_json.c:27:10: fatal error: jose/jws.h: No such file or directory
   27 | #include <jose/jws.h>
      |          ^~~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:28595: src/oidc_child/oidc_child-oidc_child_json.o] Error 1
make[2]: Leaving directory '/home/tkloczko/rpmbuild/BUILD/sssd-2.7.2'
make[1]: *** [Makefile:41056: all-recursive] Error 1
make[1]: Leaving directory '/home/tkloczko/rpmbuild/BUILD/sssd-2.7.2'
make: *** [Makefile:12614: all] Error 2
alexey-tikhonov commented 2 years ago

You need either to install libjose-devel or to configure with --with-oidc-child=no

kloczek commented 2 years ago

Issue is not in that I don't know in which package are missing header files but in cofigure.ac there is no checking dependencies. From that point of view issue still is not resolved.

alexey-tikhonov commented 2 years ago

Pushed PR: https://github.com/SSSD/sssd/pull/6237