On Mon, Apr 22, 2013 at 01:36:46PM +0200, Lukas Slebodnik wrote: > On (22/04/13 12:17), Jakub Hrozek wrote: > >On Mon, Apr 22, 2013 at 09:35:10AM +0200, Lukas Slebodnik wrote: > >> On (19/04/13 21:24), Lukas Slebodnik wrote: > >> >On (19/04/13 11:30), Jakub Hrozek wrote: > >> >>Timo Aaltonen discovered that on Ubuntu the simple access tests fail > >> >>with a linker error saying that dlopen and dlsym are not available. It > >> >>seems that because we are linking to some files from > >> >>src/providers/data_provider_*.c we need to also link with -ldl. > >> >> > >> >>Timo confirmed on IRC that this one-liner fixes the problem for him. > >> > > >> >>From a58c950b21056925f8a5ae46a6bb6ad5a951ef11 Mon Sep 17 00:00:00 2001 > >> >>From: Jakub Hrozek <jhro...@redhat.com> > >> >>Date: Fri, 19 Apr 2013 11:27:59 +0200 > >> >>Subject: [PATCH] tests: Link the simple access tests with -ldl > >> >> > >> >>--- > >> >> Makefile.am | 1 + > >> >> 1 file changed, 1 insertion(+) > >> >> > >> >>diff --git a/Makefile.am b/Makefile.am > >> >>index > >> >>09056b5d9fec1d23213132940d11c312bcbfc23d..ef1802246226bd08826f028a784d80289b723d81 > >> >> 100644 > >> >>--- a/Makefile.am > >> >>+++ b/Makefile.am > >> >>@@ -1058,6 +1058,7 @@ simple_access_tests_CFLAGS = \ > >> >> $(CHECK_CFLAGS) \ > >> >> -DUNIT_TESTING > >> >> simple_access_tests_LDADD = \ > >> >>+ -ldl \ > >> >> $(SSSD_LIBS) \ > >> >> $(CARES_LIBS) \ > >> >> $(CHECK_LIBS) \ > >> >>-- > >> >>1.8.1.4 > >> > > >> >Ack, > >> >but add comment to git message, that upstream nspr 4.9 > >> >(http://www.mozilla.org/projects/nspr/) > >> >removed -ldl and -lpthread from pkg-config file. > >> > > >> >BTW: sssd depends on nss and nss depends on nspr. > >> > > >> >LS > >> > >> After reading this mail once more time. I find out, that my explanations > >> was > >> very briefly and maybe unintelligible. > >> > >> In SSSD, we use functions dlopen and dlsym in two files > >> src/providers/data_provider_be.c and src/providers/proxy/proxy_init.c. > >> This is > >> reason why we should explicitly link with -ldl also in simple_access-tests. > >> > >> SSSD can be compiled with two crypto libraries > >> nss(mozilla) or libcrypto(openssl). NSS has dependency nspr which depends > >> on > >> "libdl and libpthread" > >> This is a reason why compilation of test did not failed even if -ldl was > >> not > >> explicitly added to simple_access_tests_LDADD. But libcrypto doesn't > >> depend on > >> libdl, so in this case compilation of tests will not be successful. > >> > >> Upstream nspr 4.9 has two ways have to obtain metainformation about > >> libraries > >> pkg-config and own script nspr-config. First one doesn't show "-ldl and > >> -lpthread" but second one show "-ldl and -lpthread" > >> And this is a reason why Timo found this bug. Fedora has got patched > >> version of > >> nspr, but debian(ubuntu) hasn't got. > >> > >> LS > > > >Thank you, this is a really nice explanation. I used it to amend the > >commit message. A new patch is attached. > > Ack
Pushed to master. _______________________________________________ sssd-devel mailing list sssd-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/sssd-devel