On Mon, Mar 10, 2014 at 07:37:00AM +0100, Lukas Slebodnik wrote: > On (18/11/13 10:59), Lukas Slebodnik wrote: > >On (18/11/13 10:41), Lukas Slebodnik wrote: > >>ehlo, > >> > >>Static library libsss_test_common calls tevent functions directly (in module > >>common_tev.c), but it was not linked with tevent library. > >> > >>Compilation will fail if sssd is linked with "-Wl,--as-needed" > >> CCLD test_utils > >>/usr/bin/ld: ./.libs/libsss_test_common.a(common_tev.o): undefined > >>reference to symbol 'tevent_context_init@@TEVENT_0.9.9' > >>/usr/bin/ld: note: 'tevent_context_init@@TEVENT_0.9.9' is defined in DSO > >>/usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../../lib64/libtevent.so so > >>try adding it to the linker command line > >>/usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../../lib64/libtevent.so: > >>could not read symbols: Invalid operation > >>clang: error: linker command failed with exit code 1 (use -v to see > >>invocation) > >> > >>nm ./libsss_test_common.a | grep tevent > >> U tevent_context_init > >> U _tevent_loop_once > >> U _tevent_req_create > >> U _tevent_req_done > >> U _tevent_req_error > >> U tevent_req_is_error > >> U tevent_req_post > >> > >>Simple patch is attached. > >One more time :-) > > > >LS > > The same problem is also in sssd-1-11 after pushing patch > "DP: Provide separate dp_copy_defaults function" > > CCLD dp_opt_tests > /usr/bin/ld: ./.libs/libsss_test_common.a(common_tev.o): undefined reference > to symbol '_tevent_loop_once@@TEVENT_0.9.9' > /usr/bin/ld: note: '_tevent_loop_once@@TEVENT_0.9.9' is defined in DSO > /lib64/libtevent.so.0 so try adding it to the linker command line > /lib64/libtevent.so.0: could not read symbols: Invalid operation > clang: error: linker command failed with exit code 1 (use -v to see > invocation) > make[2]: *** [dp_opt_tests] Error 1 > > LS
Darn. I wonder how to catch these issues automatically the next time around. I don't compile with -as-needed right now, mostly because I try to keep my defaults as close to RHEL and Fedora as possible. Is there any value in doing so? Would this be a good thing for the Continuous Integration setup? _______________________________________________ sssd-devel mailing list sssd-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/sssd-devel