misc/97497: libtunepimp.so neglects to link libiconv.so

Samuel Stringham sstringh at rackspace.com
Fri May 19 15:00:45 UTC 2006


>Number:         97497
>Category:       misc
>Synopsis:       libtunepimp.so neglects to link libiconv.so
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri May 19 15:00:38 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Samuel Stringham
>Release:        6.1-PRERELEASE
>Organization:
>Environment:
FreeBSD work.samuelstringham.com 6.1-PRERELEASE FreeBSD 6.1-PRERELEASE #0: Fri Apr 21 12:18:21 CDT 2006     root at work.samuelstringham.com:/usr/obj/usr/src/sys/WORKSTATION  i386
>Description:
When running audio/picard, the following error is generated:

Traceback (most recent call last):
  File "/usr/local/bin/mb_tagger.py", line 74, in ?
    from picard.browser import browser, filelookup, launch
  File "/usr/local/lib/python2.4/site-packages/picard/browser/browser.py", line 57, in ?
    from picard.lib import events, util
  File "/usr/local/lib/python2.4/site-packages/picard/lib/util.py", line 56, in ?
    from tunepimp import tunepimp
  File "/usr/local/lib/python2.4/site-packages/tunepimp/__init__.py", line 27, in ?
    import tunepimp
  File "/usr/local/lib/python2.4/site-packages/tunepimp/tunepimp.py", line 161, in ?
    tplib = cdll.LoadLibrary(findLibrary())
  File "/usr/local/lib/python2.4/site-packages/ctypes/__init__.py", line 378, in LoadLibrary
    return self._dlltype(name)
  File "/usr/local/lib/python2.4/site-packages/ctypes/__init__.py", line 296, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: /usr/local/lib/libtunepimp.so.3: Undefined symbol "libiconv_open"

--
This error seems to be due to the fact that libiconv is not properly linked to libtunepimp.so.3.  This can be seen with:

$ nm -B /usr/local/lib/libtunepimp.so.3 | grep libiconv_open
         U libiconv_open
$ ldd /usr/local/lib/libtunepimp.so.3
/usr/local/lib/libtunepimp.so.3:
        libmusicbrainz.so.4 => /usr/local/lib/libmusicbrainz.so.4 (0x281be000)
        libz.so.3 => /lib/libz.so.3 (0x281eb000)
        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x281fb000)
        libm.so.4 => /lib/libm.so.4 (0x282c5000)
        libexpat.so.6 => /usr/local/lib/libexpat.so.6 (0x282db000)
$ nm -B /usr/local/lib/libiconv.so.3 | grep libiconv_open
00011ab4 T libiconv_open



>How-To-Repeat:
$ portinstall audio/picard; # as-of 18 May 2006.
$ picard

>Fix:
This was the patch I applied (diff -Nru):

--- work/libtunepimp-0.4.2/lib/Makefile Fri May 19 09:54:49 2006
+++ work/libtunepimp-0.4.2/lib/Makefile.new     Fri May 19 09:54:40 2006
@@ -144,7 +144,7 @@
 INSTALL_PROGRAM = install  -s -o root -g wheel -m 555
 INSTALL_SCRIPT = install  -o root -g wheel -m 555
 INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
-LDFLAGS = -L/usr/local/lib
+LDFLAGS = -L/usr/local/lib -liconv
 LIBLTDL = ${top_builddir}/libltdl/libltdlc.la
 LIBOBJS =
 LIBS =


But, you could probably solve this in a number of ways.
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list