[pkg-wpa-devel] Bug#618719: FTBFS on kfreebsd: ../src/utils/pcsc_funcs.o: undefined reference to symbol 'dlsym@@GLIBC_2.3'

Kel Modderman kel at otaku42.de
Sat Mar 19 12:17:38 UTC 2011


On Friday 18 March 2011 07:46:23 Michael Biebl wrote:
> Package: wpasupplicant
> Version: 0.7.3-1
> Severity: serious
> 
> Hi,
> 
> wpasupplicant ftbfs on kfree-bsd:
> 
> /usr/bin/ld: ../src/utils/pcsc_funcs.o: undefined reference to symbol
> 'dlsym@@GLIBC_2.3'
> /usr/bin/ld: note: 'dlsym@@GLIBC_2.3' is defined in DSO //lib/libdl.so.2
> so try adding it to the linker command line
> //lib/libdl.so.2: could not read symbols: Invalid operation
> collect2: ld returned 1 exit status
> make[2]: *** [wpa_supplicant] Error 1
> 
> Complete build log is at
> https://buildd.debian.org/fetch.cgi?pkg=wpasupplicant&arch=kfreebsd-amd64&ver=0.7.3-1&stamp=1299705072&file=log&as=raw
> 
> Looks like the build failure is due to 08_pcsc_dynamic.patch


We could drop the patch or we could update the patch to add '-ldl' to LIBS in
build system. I'm undecided, and atm extremely burnt out with real life work,
so am looking for some advice.

08_pcsc_dynamic.patch is untested by anyone, not very beautiful looking. Also
it seems up to me to push to upstream, which I'm not totally confident about.

Further to the problem, upstream build system seems not to add '-ldl' to LIBS
for BSD configurations. For example:

$ grep -A1 -B1 '\-ldl' wpa_supplicant/Makefile                                                                                          
ifndef CONFIG_DRIVER_BSD                                                                                                                                                                  
LIBS += -ldl                                                                                                                                                                              
endif                                                                                                                                                                                     
--                                                                                                                                                                                        
ifneq ($(CONFIG_L2_PACKET), freebsd)                                                                                                                                                      
LIBS += -ldl                                                                                                                                                                              
endif

I do not know why this is the case, and I think this will come up if I was to
push this patch upstream. There are multiple places in which this linker flag
gets added to LIBS for non BSD configurations which is why we did not witness
this build failure on linux before now.

Attached is what I drafted up in working copy of pkg-wpa SVN in response to the
FTBFS notifications some days ago, comments about how to proceed are very
welcome. I know Stephan's inclination is to drop the patch and let someone
with the hardware and know how fix up the problem in the future.

Thanks, Kel.
---
Index: debian/patches/08_pcsc_dynamic.patch                                                                                                                                               
===================================================================                                                                                                                       
--- debian/patches/08_pcsc_dynamic.patch        (revision 1571)
+++ debian/patches/08_pcsc_dynamic.patch        (working copy)
@@ -42,12 +42,13 @@
  #undef SCARD_PCI_T0
 --- a/wpa_supplicant/Makefile
 +++ b/wpa_supplicant/Makefile
-@@ -691,9 +691,13 @@ ifdef CONFIG_NATIVE_WINDOWS
+@@ -691,9 +691,14 @@ ifdef CONFIG_NATIVE_WINDOWS
  #dynamic symbol loading that is now used in pcsc_funcs.c
  #LIBS += -lwinscard
  else
 +ifeq ($(CONFIG_PCSC), dyn)
 +CFLAGS += -DPCSC_DYNAMIC
++LIBS += -ldl
 +else
  LIBS += $(shell pkg-config --libs libpcsclite)
  endif
Index: debian/changelog
===================================================================
--- debian/changelog    (revision 1573)
+++ debian/changelog    (working copy)
@@ -1,3 +1,10 @@
+wpasupplicant (0.7.3-2) UNRELEASED; urgency=low
+
+  * Modify debian/patches/08_pcsc_dynamic.patch to add dl to LIBS to link
+    with.
+
+ -- Kel Modderman <kel at otaku42.de>  Fri, 11 Mar 2011 23:37:07 +1000
+
 wpasupplicant (0.7.3-1) experimental; urgency=low
 
   [ Kel Modderman ]
---





More information about the Pkg-wpa-devel mailing list