On (20/10/16 08:44), Joakim Tjernlund wrote:
>
> On Thu, 2016-10-20 at 10:16 +0200, Lukas Slebodnik wrote:
> >
> > On (20/10/16 09:27), Jakub Hrozek wrote:
> > >
> > >
> > > On Thu, Oct 20, 2016 at 06:58:53AM +0000, Joakim Tjernlund wrote:
> > > >
> > > >
> > > > On Wed, 2016-10-19 at 21:48 +0200, Jakub Hrozek wrote:
> > > > >
> > > > >
> > > > > === SSSD 1.14.2 ===
> > > > >
> > > > > The SSSD team is proud to announce the release of version 1.14.2
of
> > > > > the System Security Services Daemon.
> > > > >
> > > > > As always, the source is available from
https://fedorahosted.org/sssd
> > > > >
> > > > > RPM packages will be made available for Fedora shortly.
> > > > >
> > > > > == Feedback ==
> > > > > Please provide comments, bugs and other feedback via the
sssd-devel
> > > > > or sssd-users mailing lists:
> > > > > https://lists.fedorahosted.org/mailman/listinfo/sssd-devel
> > > > > https://lists.fedorahosted.org/mailman/listinfo/sssd-users
> > > > >
> > > >
> > > > hmm, I still get:
> > Sorry, I had longer holiday and there were higher priority task.
> > Fortunatelly, workaround is quite simple and you already uses it.
> >
> > >
> > >
> > > >
> > > >
> > > > libtool: link: x86_64-pc-linux-gnu-gcc -shared -fPIC
> > > > -DPIC src/providers/krb5/.libs/libsss_krb5_la-
> > > > krb5_init.o -Wl,-rpath
-Wl,/var/tmp/portage/sys-auth/sssd-1.14.2/work/sssd-1.14.2-
> > > > abi_x86_64.amd64/.libs -Wl,-rpath -Wl,/usr/lib64/sssd
-L/var/tmp/portage/sys-auth/sssd-
> > > > 1.14.2/work/sssd-
> > > > 1.14.2-abi_x86_64.amd64/.libs -Wl,--as-needed -L/usr/lib64
./.libs/libsss_util.so -lpopt -lldb
> > > > -ldbus-1
> > > > -lpcre /usr/lib64/libini_config.so /usr/lib64/libpath_utils.so
/usr/lib64/libbasicobjects.so
> > > > /usr/lib64/libref_array.so /usr/lib64/libcollection.so
/usr/lib64/libldap.so /usr/lib64/liblber.so
> > > > -lresolv -lsasl2 -lgnutls /usr/lib64/libgcrypt.so -lgpg-error -ltdb
-lglib-2.0 /var/tmp/portage/sys-
> > > >
auth/sssd-1.14.2/work/sssd-1.14.2-abi_x86_64.amd64/.libs/libsss_child.so
/var/tmp/portage/sys-
> > > > auth/sssd-
> > > > 1.14.2/work/sssd-1.14.2-abi_x86_64.amd64/.libs/libsss_cert.so
/var/tmp/portage/sys-auth/sssd-
> > > > 1.14.2/work/sssd-1.14.2-abi_x86_64.amd64/.libs/libsss_crypt.so
./.libs/libsss_crypt.so -lcrypto
> > > > ./.libs/libsss_debug.so ./.libs/libsss_child.so -ltevent -ltalloc
/var/tmp/portage/sys-auth/sssd-
> > > > 1.14.2/work/sssd-1.14.2-abi_x86_64.amd64/.libs/libsss_debug.so
./.libs/libsss_krb5_common.so
> > > > -lkeyutils
> > > > /usr/lib64/libdhash.so -lkrb5 -lk5crypto -lcom_err -O2
-Wl,-O1 -Wl,-soname -Wl,libsss_krb5.so -o
> > > > .libs/libsss_krb5.so
> > > > ./.libs/libsss_util.so: undefined reference to `timer_settime'
> > > > ./.libs/libsss_util.so: undefined reference to `timer_delete'
> > > > ./.libs/libsss_util.so: undefined reference to `timer_create'
> > > > collect2: error: ld returned 1 exit status
> > > > libtool: link: x86_64-pc-linux-gnu-gcc -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 -pipe
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
> > > > -D_LARGEFILE64_SOURCE -Wl,-O1 -o .libs/sss_ssh_knownhostsproxy
> > > > src/sss_client/sss_ssh_knownhostsproxy-
> > > > common.o src/sss_client/ssh/sss_ssh_knownhostsproxy-sss_ssh_client.o
> > > > src/sss_client/ssh/sss_ssh_knownhostsproxy-sss_ssh_knownhostsproxy.o
-Wl,-rpath -Wl,/usr/lib64 -Wl,
> > > > --as-needed ./.libs/libsss_util.so -L/usr/lib64 -lldb -ldbus-1 -lpcre
/usr/lib64/libini_config.so
> > > > /usr/lib64/libpath_utils.so /usr/lib64/libbasicobjects.so
/usr/lib64/libref_array.so
> > > > /usr/lib64/libcollection.so /usr/lib64/libldap.so
/usr/lib64/liblber.so -lresolv -lsasl2 -lgnutls
> > > > /usr/lib64/libgcrypt.so -lgpg-error -ltdb -lglib-2.0
/var/tmp/portage/sys-auth/sssd-
> > > > 1.14.2/work/sssd-
> > > > 1.14.2-abi_x86_64.amd64/.libs/libsss_child.so
/var/tmp/portage/sys-auth/sssd-1.14.2/work/sssd-
> > > > 1.14.2-
> > > > abi_x86_64.amd64/.libs/libsss_cert.so
/var/tmp/portage/sys-auth/sssd-1.14.2/work/sssd-1.14.2-
> > > > abi_x86_64.amd64/.libs/libsss_crypt.so ./.libs/libsss_crypt.so
-lcrypto ./.libs/libsss_debug.so
> > > > ./.libs/libsss_child.so -ltevent /usr/lib64/libdhash.so
/var/tmp/portage/sys-auth/sssd-
> > > > 1.14.2/work/sssd-
> > > > 1.14.2-abi_x86_64.amd64/.libs/libsss_debug.so -lpthread -ltalloc
-lpopt -Wl,-rpath
> > > > -Wl,/usr/lib64/sssd
> > > > Makefile:11323: recipe for target 'sss_ssh_authorizedkeys'
failed
> > > > make[2]: *** [sss_ssh_authorizedkeys] Error 1
> > > > make[2]: *** Waiting for unfinished jobs....
> > > > ./.libs/libsss_util.so: undefined reference to `timer_settime'
> > > > ./.libs/libsss_util.so: undefined reference to `timer_delete'
> > > > ./.libs/libsss_util.so: undefined reference to `timer_create'
> > > > collect2: error: ld returned 1 exit status
> > > > Makefile:11336: recipe for target 'sss_ssh_knownhostsproxy'
failed
> > > > make[2]: *** [sss_ssh_knownhostsproxy] Error 1
> > > >
> > > > I thought this was fixed(linking with librt that is)?
> > >
> > > Yes, these functions come from librt, if we don't link there
correctly,
> > > please open a bug (I guess this happens because Gentoo is using
> > > --as-needed)
> > >
> > It's not cause by "--as-needed". It compiles for me with
--as-needed
> > without any problem. I assume it's caused by different CFLAGS
> > provided by different package.
> >
> > Man page for timer_* is crystall clear.
> > It needs to be linked with -lrt.
> > I just need to some time to find more portable way then hardcoded
"-lrt"
> > among *_CFLAGS. The ideal would be something like LIBADD_DL for
"-ldl"
> >
Yes, it shoudl be part of linker flags and not CLFAGS.
>
> maybe someting like:
> libsss_util_LIBADD = -lrt
> or
> libsss_util_la_LIBADD = -lrt
>
You did not get a point.
"-lrt" is hardcoded string which should be detected
at configure time. Some platforms needn't have librt or timer_*
functions might be part of different library.
Then perhaps
libsss_util_la_LIBADD = @TIMERLIB@
Then set TIMERLIB in configure as you want. You could allow an user option to override
this setting too.
Jocke