undefined reference to libusb_get_version

Having issues with the site, hardware, source code, or any other issues?
Post Reply
dk5ras
Posts: 70
Joined: Fri Mar 01, 2013 3:23 am

undefined reference to libusb_get_version

Post by dk5ras »

Hi,

When using latest bladeRF code I get

/usr/local/lib/libbladeRF.so.0: undefined reference to `libusb_get_version'

when building gqrx; a similar message appears when I want to use gnuradio/grc with the bladeRF.

Libusbx is built from source and latest version, also are gnuradio, gr-osmosdr, gr-iqbal and gqrx.

The OS is a Kubuntu 12.04 LTS 32bit, latest patch level.

Any ideas out there what I could do? Staying with older versions is not an option for a longer period of time :)

Trying to delete all older bladeRF remains from the system changes nothing. Of course I uninstalled everything, I even deleted the whole folders of bladeRF. gr-osmosdr, gr-iqbal and gqrx and pulled all sources and built everything from scratch again, still no change.

Ralph.
jynik
Posts: 455
Joined: Thu Jun 06, 2013 8:15 pm

Re: undefined reference to libusb_get_version

Post by jynik »

Hi there Ralph,

Since you're running *Ubuntu 12.04, you likely have libusb-1.0.9 somewhere on your system, which didn't yet provide the libusb_get_version() function. I suspect that this version is being used rather than the libusb version you built from source.

Where did you install it the newer version of libusb to, and are you sure that location is in your library search path?

Are you sure that you're linking libbladeRF against libusb-1.0.17, and attempting to use that version of libusb at runtime? Running ldd should give you an idea of which version of the libusb libbladeRF was linked against:

Code: Select all

% ldd /usr/local/lib/libbladeRF.so                                ~
	linux-vdso.so.1 =>  (0x00007fff0f9f6000)
	libusb-1.0.so.0 => /lib/x86_64-linux-gnu/libusb-1.0.so.0 (0x00007f3191213000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f3190e4b000)
	libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f3190c39000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f3190a1c000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f3191669000)
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f3190814000)
dk5ras
Posts: 70
Joined: Fri Mar 01, 2013 3:23 am

Re: undefined reference to libusb_get_version

Post by dk5ras »

Hi,

yep, libusb 1.0.0 and 0.1.4 are present and seem to be uninstallable. I have no idea of library search paths and such under Linux, and I am not a coding guy at all, but of course I am able to follow instructions - here is what ldd says on my machine:

ldd /usr/local/lib/libbladeRF.so
linux-gate.so.1 => (0xb7703000)
libusb-1.0.so.0 => /lib/i386-linux-gnu/libusb-1.0.so.0 (0xb76bb000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb7511000)
librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xb7507000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xb74ec000)
/lib/ld-linux.so.2 (0xb7704000)

I donwloaded libusbx into a folder within my user folder with git clone, followed the normal make instructions, did a sudo make install and sudo ldconfig, then it was possible to build bladeRF, so I assumed things went right.

Ralph.
jynik
Posts: 455
Joined: Thu Jun 06, 2013 8:15 pm

Re: undefined reference to libusb_get_version

Post by jynik »

Hi Ralph,

My schedule's a bit tight for the next day or two, I'll do my best to replicate your setup in a 12.04 VM, and then write up a little guide on installing a newer libusb version in 12.04. (I tend to be able to debug things easier when I can dive in myself...) Thanks for your patience! :)

So one detail that will be important here is figuring out which .so's correspond to which libusb version. Below is some info just on tracking things down. If and when we come to the conclusion that the wrong library is being used at runtime, we can perhaps change a symlink to point to the libusbx shared library you build from source. (I want to test drive that to ensure we have a clean solution that doesn't end up breaking other things on your machine...more on that soon!)

Off the top of my head, I'm not sure where libusbx installs to. Mind letting me know where it landed the .so upon running sudo make install?

The /lib/i386-linux-gnu location (is this a 32 bit machine?) seems like where the system-provided libusb might live. Could you double check where the repo-provided libusb packages are installed?


I still seem to think that the issue here is that one of the older libraries is being used at runtime. We can check which library is being loaded by using strace to look for an open() call to the libusb shared library:

Code: Select all

$ echo quit | strace bladeRF-cli -i 2>&1 | grep "open(.*libusb.*)"
open("/lib/x86_64-linux-gnu/libusb-1.0.so.0", O_RDONLY|O_CLOEXEC) = 3 
So here, we see that when running the CLI, the libusb shared library in /lib/x86_64-linux-gnu/ is being loaded.

Just to be neighborly and explain the above line to any Linux newcomers reading this thread...
  • echo quit | strace bladeRF-cli -i -- Here we're running bladeRF-cli in interactive mode through strace. We pipe "quit" to the input of bladeRF-cli so the interactive mode will read this command and immediately exit after it finishes initializing.
  • 2>&1 - Redirect stderr to stdout. strace outputs to stderr, and we'll want output on stdout to grep on.
  • grep "open(.*libusb.*)" -- Grep for open( anything libusb anything )

Once you have an idea of which versions of the lib are installed where, and which one is being used at runtime, I think we'll have our culprit. Additionally, you could check if a the library contains libusb_get_version:

Code: Select all

# To dump all dynamic symbols (note that symbols marked by 'T' are those provided by the library. Those with 'U' are symbols that needed to be provided by another shared library, such as libc or libpthread.)

$ nm -D /lib/x86_64-linux-gnu/libusb-1.0.so.0  | less
... lots of output ...


# To check for the existance of a particular symbol. In this case, my lib has libusb_get_version. If yours does not, the output will be empty.

$ nm -D /lib/x86_64-linux-gnu/libusb-1.0.so.0 | grep libusb_get_version
0000000000005d60 T libusb_get_version 

Well...hope that helps explain things a bit. Apologies for being terribly long-winded. I'll check back ASAP with the results from a 12.04 VM!
dk5ras
Posts: 70
Joined: Fri Mar 01, 2013 3:23 am

Re: undefined reference to libusb_get_version

Post by dk5ras »

OK, just at a first glance...

When doing a sudo make install for libusbx, it tells that it installs into /usr/local/lib, while the output of your command is

open("/lib/i386-linux-gnu/libusb-1.0.so.0", O_RDONLY|O_CLOEXEC) = 3

So maybe really just some stupid search path thing?

Thank you for your patience and assistance - no need to hurry, we all have a life without SDR...at least I think so :)

Ralph.
jynik
Posts: 455
Joined: Thu Jun 06, 2013 8:15 pm

Re: undefined reference to libusb_get_version

Post by jynik »

Hi Ralph,

Yeah, I think it's just a search path issue.

I just fetched and installed libusbx 1.0.17 in an XUbuntu 12.04 VM. As you noted, the default install lands the library in /usr/local/lib. The general process for me was as follows:

Code: Select all

# Had to fetch a few things first...
$ sudo apt-get install automake libtool libudev-dev

$ cd ~/software 

$ git clone git://github.com/libusbx/libusbx.git
Cloning into 'libusbx'...
remote: Reusing existing pack: 9845, done.
remote: Total 9845 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (9845/9845), 4.85 MiB | 36 KiB/s, done.
Resolving deltas: 100% (6129/6129), done.

$ cd libusbx

$ git checkout v1.0.17
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install
$ sudo ldconfig
For what it's worth, here's the output of sudo ldconfig -v on that VM:

Code: Select all

/usr/local/lib:
	libbladeRF.so.0 -> libbladeRF.so.0
	libusb-1.0.so.0 -> libusb-1.0.so.0.1.0
/lib/x86_64-linux-gnu:
	libattr.so.1 -> libattr.so.1.1.0
	libe2p.so.2 -> libe2p.so.2.3
	libssl.so.1.0.0 -> libssl.so.1.0.0
	libusb-1.0.so.0 -> libusb-1.0.so.0.1.0
	libpcprofile.so -> libpcprofile.so
	libSegFault.so -> libSegFault.so
	libnsl.so.1 -> libnsl-2.15.so
	libreadline.so.6 -> libreadline.so.6.2
	libslang.so.2 -> libslang.so.2.2.4
	libatasmart.so.4 -> libatasmart.so.4.0.4
	libresolv.so.2 -> libresolv-2.15.so
	libext2fs.so.2 -> libext2fs.so.2.4
	libmemusage.so -> libmemusage.so
	libthread_db.so.1 -> libthread_db-1.0.so
	libss.so.2 -> libss.so.2.0
	libuuid.so.1 -> libuuid.so.1.3.0
	libblkid.so.1 -> libblkid.so.1.1.0
	libntfs-3g.so.831 -> libntfs-3g.so.831.0.0
	libnih.so.1 -> libnih.so.1.0.0
	libc.so.6 -> libc-2.15.so
	libacl.so.1 -> libacl.so.1.1.0
	ld-linux-x86-64.so.2 -> ld-2.15.so
	libcrypt.so.1 -> libcrypt-2.15.so
	libpopt.so.0 -> libpopt.so.0.0.0
	libpng12.so.0 -> libpng12.so.0.46.0
	libnss_compat.so.2 -> libnss_compat-2.15.so
	libBrokenLocale.so.1 -> libBrokenLocale-2.15.so
	libpcsclite.so.1 -> libpcsclite.so.1.0.0
	libselinux.so.1 -> libselinux.so.1
	libnss_files.so.2 -> libnss_files-2.15.so
	libcap.so.2 -> libcap.so.2.22
	libglib-2.0.so.0 -> libglib-2.0.so.0.3200.4
	libhistory.so.5 -> libhistory.so.5.2
	libcidn.so.1 -> libcidn-2.15.so
	libparted.so.0 -> libparted.so.0.0.1
	libncurses.so.5 -> libncurses.so.5.9
	libcom_err.so.2 -> libcom_err.so.2.1
	libnss_nisplus.so.2 -> libnss_nisplus-2.15.so
	libdbus-1.so.3 -> libdbus-1.so.3.5.8
	librt.so.1 -> librt-2.15.so
	libgcrypt.so.11 -> libgcrypt.so.11.7.0
	libm.so.6 -> libm-2.15.so
	libbz2.so.1.0 -> libbz2.so.1.0.4
	libtinfo.so.5 -> libtinfo.so.5.9
	libreadline.so.5 -> libreadline.so.5.2
	libnss_nis.so.2 -> libnss_nis-2.15.so
	libbsd.so.0 -> libbsd.so.0.3.0
	libhistory.so.6 -> libhistory.so.6.2
	libusb-0.1.so.4 -> libusb-0.1.so.4.4.4
	libnss_dns.so.2 -> libnss_dns-2.15.so
	libexpat.so.1 -> libexpat.so.1.5.2
	libpam.so.0 -> libpam.so.0.83.0
	libpci.so.3 -> libpci.so.3.1.8
	libgcc_s.so.1 -> libgcc_s.so.1
	libpcre.so.3 -> libpcre.so.3.12.1
	libdl.so.2 -> libdl-2.15.so
	libpamc.so.0 -> libpamc.so.0.82.1
	libnih-dbus.so.1 -> libnih-dbus.so.1.0.0
	libmount.so.1 -> libmount.so.1.1.0
	libz.so.1 -> libz.so.1.2.3.4
	libanl.so.1 -> libanl-2.15.so
	libudev.so.0 -> libudev.so.0.13.0
	libgpg-error.so.0 -> libgpg-error.so.0.8.0
	libncursesw.so.5 -> libncursesw.so.5.9
	libpthread.so.0 -> libpthread-2.15.so
	libkeyutils.so.1 -> libkeyutils.so.1.4
	libcrypto.so.1.0.0 -> libcrypto.so.1.0.0
	libpam_misc.so.0 -> libpam_misc.so.0.82.0
	libwrap.so.0 -> libwrap.so.0.7.6
	libnss_hesiod.so.2 -> libnss_hesiod-2.15.so
	libutil.so.1 -> libutil-2.15.so
/usr/lib/x86_64-linux-gnu:
	libcupsfilters.so.1 -> libcupsfilters.so.1
	libcups.so.2 -> libcups.so.2
	libpulsecommon-1.1.so -> libpulsecommon-1.1.so
	libfontconfig.so.1 -> libfontconfig.so.1.4.4
	libabiword-2.9.so -> libabiword-2.9.so
	libxml2.so.2 -> libxml2.so.2.7.8
	libplc4.so -> libplc4.so.0d
	libpulsedsp.so -> libpulsedsp.so
	libXv.so.1 -> libXv.so.1.0.0
	libgutenprint.so.3 -> libgutenprint.so.3.0.0
	libLLVM-3.0.so.1 -> libLLVM-3.0.so.1
	libvorbis.so.0 -> libvorbis.so.0.4.5
	libedit.so.2 -> libedit.so.2.11
	libtic.so.5 -> libtic.so.5.9
	libgeis.so.1 -> libgeis.so.1.3.0
	libv4l1.so.0 -> libv4l1.so.0
	libXxf86vm.so.1 -> libXxf86vm.so.1.0.0
	libXtst.so.6 -> libXtst.so.6.1.0
	libgmp.so.10 -> libgmp.so.10.0.2
	libdrm_nouveau.so.1 -> libdrm_nouveau.so.1.0.0
	libgstbasecamerabinsrc-0.10.so.0 -> libgstbasecamerabinsrc-0.10.so.0.0.0
	librtmp.so.0 -> librtmp.so.0
	libgomp.so.1 -> libgomp.so.1.0.0
	libgudev-1.0.so.0 -> libgudev-1.0.so.0.1.1
	libpanel.so.5 -> libpanel.so.5.9
	libavahi-client.so.3 -> libavahi-client.so.3.2.9
	libwbclient.so.0 -> libwbclient.so.0
	libfarstream-0.1.so.0 -> libfarstream-0.1.so.0.0.1
	libsamplerate.so.0 -> libsamplerate.so.0.1.8
	libkrb5.so.26 -> libkrb5.so.26.0.0
	libts-0.0.so.0 -> libts-0.0.so.0.1.1
	libapt-pkg.so.4.12 -> libapt-pkg.so.4.12.0
	libdrm.so.2 -> libdrm.so.2.4.0
	libportaudio.so.2 -> libportaudio.so.2.0.0
	libcupsdriver.so.1 -> libcupsdriver.so.1
	liblcms.so.1 -> liblcms.so.1.0.19
	libjacknet.so.0 -> libjacknet.so.0.1.0
	libgdbm.so.3 -> libgdbm.so.3.0.0
	libX11.so.6 -> libX11.so.6.3.0
	libibus-1.0.so.0 -> libibus-1.0.so.0.401.0
	libcroco-0.6.so.3 -> libcroco-0.6.so.3.0.1
	libltdl.so.7 -> libltdl.so.7.3.0
	libcupsimage.so.2 -> libcupsimage.so.2
	libsane.so.1 -> libsane.so.1.0.22
	libgstcontroller-0.10.so.0 -> libgstcontroller-0.10.so.0.30.0
	libgstcodecparsers-0.10.so.0 -> libgstcodecparsers-0.10.so.0.0.0
	libldap_r-2.4.so.2 -> libldap_r-2.4.so.2.8.1
	libglapi.so.0 -> libglapi.so.0.0.0
	libnettle.so.4 -> libnettle.so.4.3
	libXi.so.6 -> libXi.so.6.1.0
	libgstsdp-0.10.so.0 -> libgstsdp-0.10.so.0.25.0
	libxcb-glx.so.0 -> libxcb-glx.so.0.0.0
	libxslt.so.1 -> libxslt.so.1.1.26
	libnss3.so -> libnss3.so.1d
	libgstphotography-0.10.so.0 -> libgstphotography-0.10.so.0.0.0
	libgpm.so.2 -> libgpm.so.2
	libxcb-util.so.0 -> libxcb-util.so.0.0.0
	liborc-0.4.so.0 -> liborc-0.4.so.0.16.0
	libdbusmenu-gtk3.so.4 -> libdbusmenu-gtk3.so.4.0.13
	libdrm_intel.so.1 -> libdrm_intel.so.1.0.0
	libmad.so.0 -> libmad.so.0.2.1
	libWildMidi.so.1 -> libWildMidi.so.1.0.2
	libtumbler-1.so.0 -> libtumbler-1.so.0.0.0
	libcairomm-1.0.so.1 -> libcairomm-1.0.so.1.4.0
	libtag.so.1 -> libtag.so.1.7.0
	libgarcon-1.so.0 -> libgarcon-1.so.0.0.0
	libgettextpo.so.0 -> libgettextpo.so.0.5.1
	libxcb-render.so.0 -> libxcb-render.so.0.0.0
	libgailutil.so.18 -> libgailutil.so.18.0.1
	libiec61883.so.0 -> libiec61883.so.0.1.1
	libFLAC.so.8 -> libFLAC.so.8.2.0
	libpango-1.0.so.0 -> libpango-1.0.so.0.3000.0
	libdbusmenu-gtk.so.4 -> libdbusmenu-gtk.so.4.0.13
	libformw.so.5 -> libformw.so.5.9
	libexo-1.so.0 -> libexo-1.so.0.0.0
	libavformat.so.53 -> libavformat.so.53.21.1
	libsqlite3.so.0 -> libsqlite3.so.0.8.6
	libgnomevfs-2.so.0 -> libgnomevfs-2.so.0.2400.4
	libutouch-frame.so.1 -> libutouch-frame.so.1.4.0
	libgiomm-2.4.so.1 -> libgiomm-2.4.so.1.3.0
	libSM.so.6 -> libSM.so.6.0.1
	libthai.so.0 -> libthai.so.0.1.6
	libXrender.so.1 -> libXrender.so.1.3.0
	libgstbasevideo-0.10.so.0 -> libgstbasevideo-0.10.so.0.0.0
	libtdb.so.1 -> libtdb.so.1.2.9
	libsndfile.so.1 -> libsndfile.so.1.0.25
	libass.so.4 -> libass.so.4.1.0
	libwavpack.so.1 -> libwavpack.so.1.1.4
	libapt-inst.so.1.4 -> libapt-inst.so.1.4.0
	libgstvideo-0.10.so.0 -> libgstvideo-0.10.so.0.25.0
	libICE.so.6 -> libICE.so.6.3.0
	libgrail.so.5 -> libgrail.so.5.0.0
	libjack.so.0 -> libjack.so.0.1.0
	libavc1394.so.0 -> libavc1394.so.0.3.0
	libXcursor.so.1 -> libXcursor.so.1.0.2
	libgmodule-2.0.so.0 -> libgmodule-2.0.so.0.3200.4
	libsoup-2.4.so.1 -> libsoup-2.4.so.1.5.0
	libcupsmime.so.1 -> libcupsmime.so.1
	libespeak.so.1 -> libespeak.so.1.1.46
	libgnome-keyring.so.0 -> libgnome-keyring.so.0.2.0
	libidn.so.11 -> libidn.so.11.6.6
	libpoppler.so.19 -> libpoppler.so.19.0.0
	libexslt.so.0 -> libexslt.so.0.8.15
	libasn1.so.8 -> libasn1.so.8.0.0
	libavahi-core.so.7 -> libavahi-core.so.7.0.2
	libdbusmenu-glib.so.4 -> libdbusmenu-glib.so.4.0.13
	libp11-kit.so.0 -> libp11-kit.so.0.0.0
	libdc1394.so.22 -> libdc1394.so.22.1.7
	libhunspell-1.3.so.0 -> libhunspell-1.3.so.0.0.0
	libmenuw.so.5 -> libmenuw.so.5.9
	libgstcdda-0.10.so.0 -> libgstcdda-0.10.so.0.25.0
	libtalloc.so.2 -> libtalloc.so.2.0.7
	libbluetooth.so.3 -> libbluetooth.so.3.11.5
	libsasl2.so.2 -> libsasl2.so.2.0.25
	libsonic.so.0 -> libsonic.so.0.1.17
	libogg.so.0 -> libogg.so.0.7.1
	libtiff.so.4 -> libtiff.so.4.3.4
	libart_lgpl_2.so.2 -> libart_lgpl_2.so.2.3.21
	libutouch-evemu.so.1 -> libutouch-evemu.so.1.0.0
	libgstdataprotocol-0.10.so.0 -> libgstdataprotocol-0.10.so.0.30.0
	libgtk-x11-2.0.so.0 -> libgtk-x11-2.0.so.0.2400.10
	libk5crypto.so.3 -> libk5crypto.so.3.1
	libgstriff-0.10.so.0 -> libgstriff-0.10.so.0.25.0
	libXfixes.so.3 -> libXfixes.so.3.1.0
	libGLU.so.1 -> libGLU.so.1.3.08004
	libvo-amrwbenc.so.0 -> libvo-amrwbenc.so.0.0.2
	libXmu.so.6 -> libXmu.so.6.2.0
	librom1394.so.0 -> librom1394.so.0.3.0
	libXdamage.so.1 -> libXdamage.so.1.1.0
	libsigc-2.0.so.0 -> libsigc-2.0.so.0.0.0
	libgdu.so.0 -> libgdu.so.0.0.0
	libshout.so.3 -> libshout.so.3.2.0
	libxcb-shm.so.0 -> libxcb-shm.so.0.0.0
	liblua5.1-c++.so.0 -> liblua5.1-c++.so.0.0.0
	libjpeg.so.8 -> libjpeg.so.8.0.2
	liborc-test-0.4.so.0 -> liborc-test-0.4.so.0.16.0
	libmp3lame.so.0 -> libmp3lame.so.0.0.0
	libnspr4.so -> libnspr4.so.0d
	libutouch-grail.so.1 -> libutouch-grail.so.1.3.0
	libcupscgi.so.1 -> libcupscgi.so.1
	libgstnetbuffer-0.10.so.0 -> libgstnetbuffer-0.10.so.0.25.0
	libavahi-glib.so.1 -> libavahi-glib.so.1.0.2
	libgtk-3.so.0 -> libgtk-3.so.0.400.2
	libgee.so.2 -> libgee.so.2.0.0
	libaa.so.1 -> libaa.so.1.0.4
	libpostproc.so.52 -> libpostproc.so.52.0.0
	libtheora.so.0 -> libtheora.so.0.3.10
	libvo-aacenc.so.0 -> libvo-aacenc.so.0.0.2
	libpangoxft-1.0.so.0 -> libpangoxft-1.0.so.0.3000.0
	libframe.so.6 -> libframe.so.6.0.0
	liboil-0.3.so.0 -> liboil-0.3.so.0.3.0
	libjasper.so.1 -> libjasper.so.1.0.0
	libnotify.so.4 -> libnotify.so.4.0.0
	libunistring.so.0 -> libunistring.so.0.1.2
	libjson.so.0 -> libjson.so.0.0.1
	libpulse-mainloop-glib.so.0 -> libpulse-mainloop-glib.so.0.0.4
	libXmuu.so.1 -> libXmuu.so.1.0.0
	libavcodec.so.53 -> libavcodec.so.53.35.0
	libcdda_interface.so.0 -> libcdda_interface.so.0.10.2
	libgssapi.so.3 -> libgssapi.so.3.0.0
	libXt.so.6 -> libXt.so.6.0.0
	libpipeline.so.1 -> libpipeline.so.1.2.1
	libhx509.so.5 -> libhx509.so.5.0.0
	libxcb-shape.so.0 -> libxcb-shape.so.0.0.0
	libpulse.so.0 -> libpulse.so.0.13.5
	libXrandr.so.2 -> libXrandr.so.2.2.0
	libXss.so.1 -> libXss.so.1.0.0
	libraw1394.so.11 -> libraw1394.so.11.0.1
	libdbus-glib-1.so.2 -> libdbus-glib-1.so.2.2.2
	libasyncns.so.0 -> libasyncns.so.0.3.1
	libgstnet-0.10.so.0 -> libgstnet-0.10.so.0.30.0
	libgstbase-0.10.so.0 -> libgstbase-0.10.so.0.30.0
	libgphoto2.so.2 -> libgphoto2.so.2.4.0
	libgstaudio-0.10.so.0 -> libgstaudio-0.10.so.0.25.0
	libpolkit-agent-1.so.0 -> libpolkit-agent-1.so.0.0.0
	libxfsm-4.6.so.0 -> libxfsm-4.6.so.0.0.0
	libieee1284.so.3 -> libieee1284.so.3.2.2
	libmng.so.1 -> libmng.so.1.1.0.10
	libwmflite-0.2.so.7 -> libwmflite-0.2.so.7.0.1
	libxcb-dri2.so.0 -> libxcb-dri2.so.0.0.0
	libv4lconvert.so.0 -> libv4lconvert.so.0
	libtheoradec.so.1 -> libtheoradec.so.1.1.4
	libsoup-gnome-2.4.so.1 -> libsoup-gnome-2.4.so.1.5.0
	libgobject-2.0.so.0 -> libgobject-2.0.so.0.3200.4
	libgailutil-3.so.0 -> libgailutil-3.so.0.0.0
	libroken.so.18 -> libroken.so.18.1.0
	libgdbm_compat.so.3 -> libgdbm_compat.so.3.0.0
	libsmime3.so -> libsmime3.so.1d
	libgstrtsp-0.10.so.0 -> libgstrtsp-0.10.so.0.25.0
	libgstfft-0.10.so.0 -> libgstfft-0.10.so.0.25.0
	libkrb5support.so.0 -> libkrb5support.so.0.1
	libopenal.so.1 -> libopenal.so.1.13.0
	libcanberra.so.0 -> libcanberra.so.0.2.5
	libsmbclient.so.0 -> libsmbclient.so.0
	libtheoraenc.so.1 -> libtheoraenc.so.1.1.2
	libswscale.so.2 -> libswscale.so.2.1.0
	libpcreposix.so.3 -> libpcreposix.so.3.12.1
	libspeexdsp.so.1 -> libspeexdsp.so.1.5.0
	libpolkit-backend-1.so.0 -> libpolkit-backend-1.so.0.0.0
	libcaca++.so.0 -> libcucul++.so.0.99.17
	libtasn1.so.3 -> libtasn1.so.3.1.12
	libcanberra-gtk3.so.0 -> libcanberra-gtk3.so.0.1.8
	libgphoto2_port.so.0 -> libgphoto2_port.so.0.8.0
	libcolord.so.1 -> libcolord.so.1.0.8
	libgnutls.so.26 -> libgnutls.so.26.21.8
	libpciaccess.so.0 -> libpciaccess.so.0.11.0
	libgupnp-igd-1.0.so.4 -> libgupnp-igd-1.0.so.4.1.0
	libsensors.so.4 -> libsensors.so.4.3.1
	libdconf.so.0 -> libdconf.so.0.0.0
	libpanelw.so.5 -> libpanelw.so.5.9
	libdb-5.1.so -> libdb-5.1.so
	libcdda_paranoia.so.0 -> libcdda_paranoia.so.0.10.2
	libXpm.so.4 -> libXpm.so.4.11.0
	libhcrypto.so.4 -> libhcrypto.so.4.1.0
	libstdc++.so.6 -> libstdc++.so.6.0.16
	liblber-2.4.so.2 -> liblber-2.4.so.2.8.1
	libgstreamer-0.10.so.0 -> libgstreamer-0.10.so.0.30.0
	libpangomm-1.4.so.1 -> libpangomm-1.4.so.1.0.30
	libvorbisenc.so.2 -> libvorbisenc.so.2.0.8
	libnssutil3.so -> libnssutil3.so.1d
	libgstinterfaces-0.10.so.0 -> libgstinterfaces-0.10.so.0.25.0
	libmenu.so.5 -> libmenu.so.5.9
	libform.so.5 -> libform.so.5.9
	libxatracker.so.1 -> libxatracker.so.1.0.0
	libcurl-gnutls.so.4 -> libcurl-gnutls.so.4.2.0
	libmpfr.so.4 -> libmpfr.so.4.1.0
	libheimbase.so.1 -> libheimbase.so.1.0.0
	libglibmm_generate_extra_defs-2.4.so.1 -> libglibmm_generate_extra_defs-2.4.so.1.3.0
	libgstcheck-0.10.so.0 -> libgstcheck-0.10.so.0.30.0
	libpolkit-gobject-1.so.0 -> libpolkit-gobject-1.so.0.0.0
	libglade-2.0.so.0 -> libglade-2.0.so.0.0.7
	libgsttag-0.10.so.0 -> libgsttag-0.10.so.0.25.0
	libavahi-common.so.3 -> libavahi-common.so.3.5.3
	libexif.so.12 -> libexif.so.12.3.2
	libatspi.so.0 -> libatspi.so.0.0.1
	libgstapp-0.10.so.0 -> libgstapp-0.10.so.0.25.0
	libarchive.so.12 -> libarchive.so.12.0.3
	libvorbisfile.so.3 -> libvorbisfile.so.3.3.4
	libatkmm-1.6.so.1 -> libatkmm-1.6.so.1.1.0
	libnice.so.10 -> libnice.so.10.0.1
	libpangox-1.0.so.0 -> libpangox-1.0.so.0.3000.0
	libspeex.so.1 -> libspeex.so.1.5.0
	libxvidcore.so.4 -> libxvidcore.so.4.3
	libpangocairo-1.0.so.0 -> libpangocairo-1.0.so.0.3000.0
	libXext.so.6 -> libXext.so.6.4.0
	libproxy.so.1 -> libproxy.so.1.0.0
	libgthread-2.0.so.0 -> libgthread-2.0.so.0.3200.4
	libtag_c.so.0 -> libtag_c.so.0.0.0
	libpixman-1.so.0 -> libpixman-1.so.0.24.4
	libthunarx-2.so.0 -> libthunarx-2.so.0.0.0
	libpcap.so.0.8 -> libpcap.so.1.1.1
	libcaca.so.0 -> libcucul.so.0.99.17
	libstartup-notification-1.so.0 -> libstartup-notification-1.so.0.0.0
	libva.so.1 -> libva.so.1.3200.0
	libutouch-geis.so.1 -> libutouch-geis.so.1.3.0
	libcurl.so.4 -> libcurl.so.4.2.0
	libgdk_pixbuf-2.0.so.0 -> libgdk_pixbuf-2.0.so.0.2600.1
	librsvg-2.so.2 -> librsvg-2.so.2.36.1
	libxcb.so.1 -> libxcb.so.1.1.0
	libmpc.so.2 -> libmpc.so.2.0.0
	libdrm_radeon.so.1 -> libdrm_radeon.so.1.0.1
	libasound.so.2 -> libasound.so.2.0.0
	libpoppler-glib.so.8 -> libpoppler-glib.so.8.2.0
	libyajl.so.1 -> libyajl.so.1.0.12
	libgstrtp-0.10.so.0 -> libgstrtp-0.10.so.0.25.0
	libglibmm-2.4.so.1 -> libglibmm-2.4.so.1.3.0
	libdv.so.4 -> libdv.so.4.0.3
	libao.so.4 -> libao.so.4.0.0
	libcairo-gobject.so.2 -> libcairo-gobject.so.2.11000.2
	libx264.so.120 -> libx264.so.120
	liblockfile.so.1 -> liblockfile.so.1.0
	libavutil.so.51 -> libavutil.so.51.22.1
	libvisual-0.4.so.0 -> libvisual-0.4.so.0.0.0
	libwmf-0.2.so.7 -> libwmf-0.2.so.7.1.0
	libwind.so.0 -> libwind.so.0.0.0
	libXau.so.6 -> libXau.so.6.0.0
	libgd.so.2 -> libgd.so.2.0.0
	libxfce4panel-1.0.so.3 -> libxfce4panel-1.0.so.3.0.0
	liblzma.so.5 -> liblzma.so.5.0.0
	libgssapi_krb5.so.2 -> libgssapi_krb5.so.2.2
	libX11-xcb.so.1 -> libX11-xcb.so.1.0.0
	libatk-1.0.so.0 -> libatk-1.0.so.0.20409.1
	libXinerama.so.1 -> libXinerama.so.1.0.0
	libXaw.so.7 -> libXaw7.so.7.0.0
	libXp.so.6 -> libXp.so.6.2.0
	libgstsignalprocessor-0.10.so.0 -> libgstsignalprocessor-0.10.so.0.0.0
	libgstpbutils-0.10.so.0 -> libgstpbutils-0.10.so.0.25.0
	libv4l2.so.0 -> libv4l2.so.0
	libxkbfile.so.1 -> libxkbfile.so.1.0.2
	libdatrie.so.1 -> libdatrie.so.1.1.0
	libplds4.so -> libplds4.so.0d
	libheimntlm.so.0 -> libheimntlm.so.0.1.0
	libpangoft2-1.0.so.0 -> libpangoft2-1.0.so.0.3000.0
	libgnutls-extra.so.26 -> libgnutls-extra.so.26.21.8
	liblua5.1.so.0 -> liblua5.1.so.0.0.0
	libSoundTouch.so.0 -> libSoundTouch.so.0.0.0
	libkrb5.so.3 -> libkrb5.so.3.3
	libffi.so.6 -> libffi.so.6.0.0
	liblcms2.so.2 -> liblcms2.so.2.0.2
	libgdk-x11-2.0.so.0 -> libgdk-x11-2.0.so.0.2400.10
	libgdk_pixbuf_xlib-2.0.so.0 -> libgdk_pixbuf_xlib-2.0.so.0.2600.1
	libwv-1.2.so.4 -> libwv-1.2.so.4.0.5
	libXdmcp.so.6 -> libXdmcp.so.6.0.0
	libcupsppdc.so.1 -> libcupsppdc.so.1
	libssl3.so -> libssl3.so.1d
	libpulse-simple.so.0 -> libpulse-simple.so.0.0.3
	libXft.so.2 -> libXft.so.2.2.0
	libgio-2.0.so.0 -> libgio-2.0.so.0.3200.4
	libcairo.so.2 -> libcairo.so.2.11000.2
	libfreetype.so.6 -> libfreetype.so.6.8.0
	libelf.so.1 -> libelf-0.152.so
	libgdk-3.so.0 -> libgdk-3.so.0.400.2
	libgconf-2.so.4 -> libgconf-2.so.4.1.5
	libexpatw.so.1 -> libexpatw.so.1.5.2
	libquadmath.so.0 -> libquadmath.so.0.0.0
	libXcomposite.so.1 -> libXcomposite.so.1.0.0
/usr/lib/x86_64-linux-gnu/mesa:
	libGL.so.1 -> libGL.so.1.2
/lib:
	libnss_mdns6.so.2 -> libnss_mdns6.so.2
	libnss_mdns4_minimal.so.2 -> libnss_mdns4_minimal.so.2
	libsysfs.so.2 -> libsysfs.so.2.0.1
	libnss_mdns4.so.2 -> libnss_mdns4.so.2
	libdevmapper-event.so.1.02.1 -> libdevmapper-event.so.1.02.1
	libcryptsetup.so.4 -> libcryptsetup.so.4.0.0
	libnl-3.so.200 -> libnl-3.so.200.3.0
	libip6tc.so.0 -> libip6tc.so.0.0.0
	liblvm2app.so.2.2 -> liblvm2app.so.2.2
	libnss_mdns.so.2 -> libnss_mdns.so.2
	libnewt.so.0.52 -> libnewt.so.0.52.11
	libipq_pic.so.0 -> libipq_pic.so.0.0.0
	libproc-3.2.8.so -> libproc-3.2.8.so
	libxtables.so.7 -> libxtables.so.7.0.0
	libx86.so.1 -> libx86.so.1
	libfuse.so.2 -> libfuse.so.2.8.6
	libdevmapper.so.1.02.1 -> libdevmapper.so.1.02.1
	libip4tc.so.0 -> libip4tc.so.0.0.0
	libnss_mdns_minimal.so.2 -> libnss_mdns_minimal.so.2
	libply.so.2 -> libply.so.2.0.0
	libulockmgr.so.1 -> libulockmgr.so.1.0.1
	libply-boot-client.so.2 -> libply-boot-client.so.2.0.0
	libipq.so.0 -> libipq.so.0.0.0
	libnss_mdns6_minimal.so.2 -> libnss_mdns6_minimal.so.2
	libply-splash-core.so.2 -> libply-splash-core.so.2.0.0
	libply-splash-graphics.so.2 -> libply-splash-graphics.so.2.0.0
	libiw.so.30 -> libiw.so.30
	libiptc.so.0 -> libiptc.so.0.0.0
	libnl-genl-3.so.200 -> libnl-genl-3.so.200.3.0
	libbrlapi.so.0.5 -> libbrlapi.so.0.5.6
/usr/lib:
	libgimpwidgets-2.0.so.0 -> libgimpwidgets-2.0.so.0.600.12
	libflite_cmu_us_kal.so.1 -> libflite_cmu_us_kal.so.1.4
	libunique-1.0.so.0 -> libunique-1.0.so.0.100.6
	libGeoIP.so.1 -> libGeoIP.so.1.4.8
	libcolamd.so.2.7.1 -> libcolamd.so.2.7.1
	libGeoIPUpdate.so.0 -> libGeoIPUpdate.so.0.0.0
	libxmlrpc_abyss.so.3 -> libxmlrpc_abyss.so.3.16
	libsgutils2.so.2 -> libsgutils2.so.2.0.0
	libdotconf-1.0.so.0 -> libdotconf-1.0.so.0.10.4
	libguile-srfi-srfi-1-v-3.so.3 -> libguile-srfi-srfi-1-v-3.so.3.0.2
	libnetsnmp.so.15 -> libnetsnmp.so.15.1.2
	libfftw3l_threads.so.3 -> libfftw3l_threads.so.3.3.0
	libkpathsea.so.5 -> libkpathsea.so.5.0.0
	libgnome-menu.so.2 -> libgnome-menu.so.2.4.13
	libdvdnavmini.so.4 -> libdvdnavmini.so.4.2.0
	libopcodes-2.22-system.so -> libopcodes-2.22-system.so
	libnetsnmpagent.so.15 -> libnetsnmpagent.so.15.1.2
	libicalvcal.so.0 -> libicalvcal.so.0.48.0
	libmtdev.so.1 -> libmtdev.so.1.0.0
	libxmlrpc_server_abyss.so.3 -> libxmlrpc_server_abyss.so.3.16
	libkeybinder.so.0 -> libkeybinder.so.0.0.1
	libijs-0.35.so -> libijs-0.35.so
	libmpeg2convert.so.0 -> libmpeg2convert.so.0.0.0
	libnetfilter_conntrack.so.3 -> libnetfilter_conntrack.so.3.1.3
	libxfce4kbd-private-2.so.0 -> libxfce4kbd-private-2.so.0.0.0
	libdns.so.81 -> libdns.so.81.3.1
	libxmlrpc_server.so.3 -> libxmlrpc_server.so.3.16
	libmathview_backend_svg.so.0 -> libmathview_backend_svg.so.0.8.0
	libevdocument3.so.4 -> libevdocument3.so.4.0.0
	libnm-glib.so.4 -> libnm-glib.so.4.3.0
	libvte.so.9 -> libvte.so.9.2800.2
	libspandsp.so.2 -> libspandsp.so.2.0.0
	libhpip.so.0 -> libhpip.so.0.0.1
	librarian.so.0 -> librarian.so.0.0.0
	libgnome-menu-3.so.0 -> libgnome-menu-3.so.0.0.1
	libkate.so.1 -> libkate.so.1.3.0
	libindicator3.so.7 -> libindicator3.so.7.0.0
	libenca.so.0 -> libenca.so.0.5.1
	libguile-srfi-srfi-60-v-2.so.2 -> libguile-srfi-srfi-60-v-2.so.2.0.2
	libgtkmathview_custom_reader.so.0 -> libgtkmathview_custom_reader.so.0.8.0
	libpulsecore-1.1.so -> libpulsecore-1.1.so
	libwps-0.2.so.2 -> libwps-0.2.so.2.0.4
	libmagic.so.1 -> libmagic.so.1.0.0
	libflite_cmulex.so.1 -> libflite_cmulex.so.1.4
	libguilereadline-v-17.so.17 -> libguilereadline-v-17.so.17.0.3
	libbfd-2.22-system.so -> libbfd-2.22-system.so
	libmathview_frontend_libxml2.so.0 -> libmathview_frontend_libxml2.so.0.8.0
	libdvdnav.so.4 -> libdvdnav.so.4.2.0
	libxfce4util.so.4 -> libxfce4util.so.4.1.1
	libyelp.so.0 -> libyelp.so.0.0.0
	liba52-0.7.4.so -> liba52-0.7.4.so
	libcdio_cdda.so.1 -> libcdio_cdda.so.1.0.0
	libdjvulibre.so.21 -> libdjvulibre.so.21.3.0
	libmathview_frontend_libxml2_reader.so.0 -> libmathview_frontend_libxml2_reader.so.0.8.0
	libdvdread.so.4 -> libdvdread.so.4.2.0
	libminiupnpc.so.8 -> libminiupnpc.so.8
	libindicate.so.5 -> libindicate.so.5.0.7
	libIex.so.6 -> libIex.so.6.0.0
	libcap-ng.so.0 -> libcap-ng.so.0.0.0
	libnm-glib-vpn.so.1 -> libnm-glib-vpn.so.1.1.0
	libwnck-3.so.0 -> libwnck-3.so.0.2.0
	libgtkspell.so.0 -> libgtkspell.so.0.0.0
	libtelepathy-glib.so.0 -> libtelepathy-glib.so.0.70.2
	libI810XvMC.so.1 -> libI810XvMC.so.1.0.0
	libgeoclue.so.0 -> libgeoclue.so.0.0.0
	libxapian.so.22 -> libxapian.so.22.4.2
	libxmlrpc_client.so.3 -> libxmlrpc_client.so.3.16
	libck-connector.so.0 -> libck-connector.so.0.0.0
	libruby1.8.so.1.8 -> libruby1.8.so.1.8.7
	libmathview.so.0 -> libmathview.so.0.8.0
	libappindicator3.so.1 -> libappindicator3.so.1.0.0
	libgdome.so.0 -> libgdome.so.0.8.1
	libXvMC.so.1 -> libXvMC.so.1.0.0
	libflite_cmu_us_rms.so.1 -> libflite_cmu_us_rms.so.1.4
	libIntelXvMC.so.1 -> libIntelXvMC.so.1.0.0
	libsnmp.so.15 -> libsnmp.so.15.1.2
	libfftw3f_threads.so.3 -> libfftw3f_threads.so.3.3.0
	libmodplug.so.1 -> libmodplug.so.1.0.0
	libgimp-2.0.so.0 -> libgimp-2.0.so.0.600.12
	librdf.so.0 -> librdf.so.0.0.0
	libicutest.so.48 -> libicutest.so.48.1.1
	libasprintf.so.0 -> libasprintf.so.0.0.0
	libfftw3l.so.3 -> libfftw3l.so.3.3.0
	libtcl8.5.so.0 -> libtcl8.5.so.0
	libguile-srfi-srfi-4-v-3.so.3 -> libguile-srfi-srfi-4-v-3.so.3.0.1
	libido3-0.1.so.0 -> libido3-0.1.so.0.0.0
	libnfnetlink.so.0 -> libnfnetlink.so.0.2.0
	libmathview_frontend_custom_reader.so.0 -> libmathview_frontend_custom_reader.so.0.8.0
	libzvbi.so.0 -> libzvbi.so.0.13.1
	libmeanwhile.so.1 -> libmeanwhile.so.1.0.2
	libchromeXvMC.so.1 -> libchromeXvMC.so.1.0.0
	libfribidi.so.0 -> libfribidi.so.0.3.1
	libindicator.so.7 -> libindicator.so.7.0.0
	libmpcdec.so.6 -> libmpcdec.so.6.1.0
	libbind9.so.80 -> libbind9.so.80.0.3
	libicudata.so.48 -> libicudata.so.48.1.1
	libsidplay.so.1 -> libsidplay.so.1.0.3
	libgmetadom_gdome_cpp_smart.so.0 -> libgmetadom_gdome_cpp_smart.so.0.2.6
	libgupnp-1.0.so.4 -> libgupnp-1.0.so.4.0.0
	libxmlrpc_util.so.3 -> libxmlrpc_util.so.3.16
	libwpd-stream-0.9.so.9 -> libwpd-stream-0.9.so.9.0.4
	libopencore-amrnb.so.0 -> libopencore-amrnb.so.0.0.2
	libnetsnmphelpers.so.15 -> libnetsnmphelpers.so.15.1.2
	libindicator-messages-status-provider.so.1 -> libindicator-messages-status-provider.so.1.0.0
	librasqal.so.3 -> librasqal.so.3.0.0
	libXRes.so.1 -> libXRes.so.1.0.0
	libgme.so.0 -> libgme.so.0.5.3
	libxmlrpc.so.3 -> libxmlrpc.so.3.16
	libdirect-1.2.so.9 -> libdirect-1.2.so.9.0.1
	libnm-util.so.2 -> libnm-util.so.2.3.0
	libmathview_frontend_gmetadom.so.0 -> libmathview_frontend_gmetadom.so.0.8.0
	libdaemon.so.0 -> libdaemon.so.0.5.0
	libXfont.so.1 -> libXfont.so.1.4.1
	libgnome-bluetooth.so.8 -> libgnome-bluetooth.so.8.0.0
	libwebkitgtk-1.0.so.0 -> libwebkitgtk-1.0.so.0.13.4
	libloudmouth-1.so.0 -> libloudmouth-1.so.0.1.0
	libjavascriptcoregtk-3.0.so.0 -> libjavascriptcoregtk-3.0.so.0.13.4
	libxfcegui4.so.4 -> libxfcegui4.so.4.3.0
	liblaunchpad-integration.so.1 -> liblaunchpad-integration.so.1.0.0
	libisofs.so.6 -> libisofs.so.6.54.0
	liboobs-1.so.5 -> liboobs-1.so.5.0.1
	libslp.so.1 -> libslp.so.1.0.1
	libxfce4ui-1.so.0 -> libxfce4ui-1.so.0.0.0
	libpspell.so.15 -> libpspell.so.15.2.0
	libtwolame.so.0 -> libtwolame.so.0.0.0
	libgtkmathview_libxml2.so.0 -> libgtkmathview_libxml2.so.0.8.0
	libvpx.so.1 -> libvpx.so.1.0.0
	libxmlrpc_xmltok.so.3 -> libxmlrpc_xmltok.so.3.16
	libevent-2.0.so.5 -> libevent-2.0.so.5.1.4
	libfusion-1.2.so.9 -> libfusion-1.2.so.9.0.1
	libmimic.so.0 -> libmimic.so.0.0.1
	libgegl-0.0.so.0 -> libgegl-0.0.so.0.22.0
	libschroedinger-1.0.so.0 -> libschroedinger-1.0.so.0.11.0
	libaccountsservice.so.0 -> libaccountsservice.so.0.0.0
	libfftw3.so.3 -> libfftw3.so.3.3.0
	libsexy.so.2 -> libsexy.so.2.0.4
	libgimpcolor-2.0.so.0 -> libgimpcolor-2.0.so.0.600.12
	libburn.so.4 -> libburn.so.4.71.0
	libnm-gtk.so.0 -> libnm-gtk.so.0.0.0
	libopenobex.so.1 -> libopenobex.so.1.5.0
	libt1x.so.5 -> libt1x.so.5.1.2
	libfftw3f.so.3 -> libfftw3f.so.3.3.0
	libspeechd.so.2 -> libspeechd.so.2.3.0
	libmathview_backend_ps.so.0 -> libmathview_backend_ps.so.0.8.0
	libxfconf-0.so.2 -> libxfconf-0.so.2.0.0
	libxmlrpc_xmlparse.so.3 -> libxmlrpc_xmlparse.so.3.16
	libgimpmodule-2.0.so.0 -> libgimpmodule-2.0.so.0.600.12
	libflite.so.1 -> libflite.so.1.4
	libgcr-3.so.1 -> libgcr-3.so.1.0.0
	libiculx.so.48 -> libiculx.so.48.1.1
	libnetsnmpmibs.so.15 -> libnetsnmpmibs.so.15.1.2
	libgtop-2.0.so.7 -> libgtop-2.0.so.7.2.0
	libgtkmm-3.0.so.1 -> libgtkmm-3.0.so.1.1.0
	libgtkmathview_gmetadom.so.0 -> libgtkmathview_gmetadom.so.0.8.0
	liblwres.so.80 -> liblwres.so.80.0.1
	libindicate-gtk.so.3 -> libindicate-gtk.so.3.0.3
	libdirac_encoder.so.0 -> libdirac_encoder.so.0.1.0
	libicule.so.48 -> libicule.so.48.1.1
	libicuuc.so.48 -> libicuuc.so.48.1.1
	libunity.so.9 -> libunity.so.9.0.2
	libfftw3_threads.so.3 -> libfftw3_threads.so.3.3.0
	libupower-glib.so.1 -> libupower-glib.so.1.0.1
	libplist.so.1 -> libplist.so.1.1.8
	libIlmThread.so.6 -> libIlmThread.so.6.0.0
	libspectre.so.1 -> libspectre.so.1.1.6
	libperl.so.5.14 -> libperl.so.5.14.2
	libgksu2.so.0 -> libgksu2.so.0.0.2
	liblink-grammar.so.4 -> liblink-grammar.so.4.7.4
	libgdkmm-3.0.so.1 -> libgdkmm-3.0.so.1.1.0
	libFS.so.6 -> libFS.so.6.0.0
	libzephyr.so.4 -> libzephyr.so.4.0.0
	libjbig2dec.so.0 -> libjbig2dec.so.0.0.0
	libgucharmap_2_90.so.7 -> libgucharmap_2_90.so.7.0.0
	libgimpmath-2.0.so.0 -> libgimpmath-2.0.so.0.600.12
	libflite_cmu_us_slt.so.1 -> libflite_cmu_us_slt.so.1.4
	libraptor2.so.0 -> libraptor2.so.0.0.0
	libnautilus-extension.so.1 -> libnautilus-extension.so.1.4.0
	libmpeg2.so.0 -> libmpeg2.so.0.0.0
	libwpd-0.9.so.9 -> libwpd-0.9.so.9.0.4
	libisccc.so.80 -> libisccc.so.80.0.0
	libexiv2.so.11 -> libexiv2.so.11.0.0
	libgrip.so.0 -> libgrip.so.0.305.0
	libgettextlib-0.18.1.so -> libgettextlib.so
	libotr.so.2 -> libotr.so.2.2.0
	libgtkmathview_libxml2_reader.so.0 -> libgtkmathview_libxml2_reader.so.0.8.0
	libpurple-client.so.0 -> libpurple-client.so.0.10.3
	libguile-srfi-srfi-13-14-v-3.so.3 -> libguile-srfi-srfi-13-14-v-3.so.3.0.1
	libdca.so.0 -> libdca.so.0.0.0
	libots-1.so.0 -> libots-1.so.0.5.0
	libt1.so.5 -> libt1.so.5.1.2
	libenchant.so.1 -> libenchant.so.1.6.0
	libmhash.so.2 -> libmhash.so.2.0.1
	libgs.so.9 -> libgs.so.9.05
	libgimpbase-2.0.so.0 -> libgimpbase-2.0.so.0.600.12
	libHalf.so.6 -> libHalf.so.6.0.0
	libbabl-0.0.so.0 -> libbabl-0.0.so.0.22.0
	libIlmImf.so.6 -> libIlmImf.so.6.0.0
	libofa.so.0 -> libofa.so.0.0.0
	libpaper.so.1 -> libpaper.so.1.1.2
	libgimpui-2.0.so.0 -> libgimpui-2.0.so.0.600.12
	libmms.so.0 -> libmms.so.0.0.2
	libjte.so.1 -> libjte.so.1.0.0
	libcdio.so.13 -> libcdio.so.13.0.0
	libXxf86dga.so.1 -> libXxf86dga.so.1.0.0
	libimobiledevice.so.2 -> libimobiledevice.so.2.0.1
	libxmlrpc_server_cgi.so.3 -> libxmlrpc_server_cgi.so.3.16
	libnl-route-3.so.200 -> libnl-route-3.so.200.3.0
	libzvbi-chains.so.0 -> libzvbi-chains.so.0.0.0
	libpython2.7.so.1.0 -> libpython2.7.so.1.0
	libflite_cmu_us_kal16.so.1 -> libflite_cmu_us_kal16.so.1.4
	libXvMCW.so.1 -> libXvMCW.so.1.0.0
	libept.so.1.0.5.4.12 -> libept.so.1.0.5.4.12
	libslv2.so.9 -> libslv2.so.9.2.0
	libgettextsrc-0.18.1.so -> libgettextsrc.so
	libcdio_paranoia.so.1 -> libcdio_paranoia.so.1.0.0
	libflite_cmu_us_awb.so.1 -> libflite_cmu_us_awb.so.1.4
	libicuio.so.48 -> libicuio.so.48.1.1
	libisccfg.so.82 -> libisccfg.so.82.0.0
	libpurple.so.0 -> libpurple.so.0.10.3
	libgirepository-1.0.so.1 -> libgirepository-1.0.so.1.0.0
	libxklavier.so.16 -> libxklavier.so.16.2.0
	libwpg-0.2.so.2 -> libwpg-0.2.so.2.0.1
	libappindicator.so.1 -> libappindicator.so.1.0.0
	libflite_usenglish.so.1 -> libflite_usenglish.so.1.4
	libevview3.so.3 -> libevview3.so.3.0.0
	libguile.so.17 -> libguile.so.17.4.0
	libgsf-1.so.114 -> libgsf-1.so.114.0.21
	libhpmud.so.0 -> libhpmud.so.0.0.6
	liblaunchpad-integration-3.0.so.1 -> liblaunchpad-integration-3.0.so.1.0.0
	libdee-1.0.so.4 -> libdee-1.0.so.4.1.1
	libmathview_backend_gtk.so.0 -> libmathview_backend_gtk.so.0.8.0
	libicalss.so.0 -> libicalss.so.0.48.0
	libpyglib-gi-2.0-python2.7.so.0 -> libpyglib-gi-2.0-python2.7.so.0.0.0
	libflite_cmu_time_awb.so.1 -> libflite_cmu_time_awb.so.1.4
	libzbar.so.0 -> libzbar.so.0.2.0
	libchromeXvMCPro.so.1 -> libchromeXvMCPro.so.1.0.0
	libdirectfb-1.2.so.9 -> libdirectfb-1.2.so.9.0.1
	libcelt0.so.0 -> libcelt0.so.0.0.0
	libopencc.so.1 -> libopencc.so.1.0.0
	libfaad.so.2 -> libfaad.so.2.0.0
	libwnck-1.so.22 -> libwnck-1.so.22.3.31
	libvte2_90.so.9 -> libvte2_90.so.9.3200.1
	libspreadsheet-1.10.17.so -> libspreadsheet.so
	libgimpthumb-2.0.so.0 -> libgimpthumb-2.0.so.0.600.12
	libnetsnmptrapd.so.15 -> libnetsnmptrapd.so.15.1.2
	libpyglib-2.0-python2.7.so.0 -> libpyglib-2.0-python2.7.so.0.0.0
	libid3tag.so.0 -> libid3tag.so.0.3.0
	libImath.so.6 -> libImath.so.6.0.0
	libutempter.so.0 -> libutempter.so.1.1.5
	libgimpconfig-2.0.so.0 -> libgimpconfig-2.0.so.0.600.12
	libicutu.so.48 -> libicutu.so.48.1.1
	libtidy-0.99.so.0 -> libtidy.so
	libical.so.0 -> libical.so.0.48.0
	liblightdm-gobject-1.so.0 -> liblightdm-gobject-1.so.0.0.0
	libopencore-amrwb.so.0 -> libopencore-amrwb.so.0.0.2
	libgsm.so.1 -> libgsm.so.1.0.12
	libfontenc.so.1 -> libfontenc.so.1.0.0
	libgck-1.so.0 -> libgck-1.so.0.0.0
	libaspell.so.15 -> libaspell.so.15.2.0
	libido-0.1.so.0 -> libido-0.1.so.0.0.0
	libgoffice-0.8.so.8 -> libgoffice-0.8.so.8.0.17
	libwebkitgtk-3.0.so.0 -> libwebkitgtk-3.0.so.0.13.4
	libcdaudio.so.1 -> libcdaudio.so.1.0.0
	libjavascriptcoregtk-1.0.so.0 -> libjavascriptcoregtk-1.0.so.0.13.4
	libicui18n.so.48 -> libicui18n.so.48.1.1
	libisc.so.83 -> libisc.so.83.0.1
	libusbmuxd.so.1 -> libusbmuxd.so.1.0.7
	libgssdp-1.0.so.3 -> libgssdp-1.0.so.3.0.0
	libuniquewm-1.2.so.9 -> libuniquewm-1.2.so.9.0.1
Note the first entry being /usr/local/lib, which contains libbladeRF and the freshly built libusb. Ctrl-F through that list for "libusb" and note that have the other system installed versions as well. Do you see anything about your ldconfig output that's strikingly different?

Here's a few ld.so related items on this machine as well. What does your /etc/ld.so.conf file and /etc/ld.so/conf.d/ directory look like?

Code: Select all

$ cat /etc/ld.so.conf
include /etc/ld.so.conf.d/*.conf

$ ls /etc/ld.so.conf.d/
libc.conf  x86_64-linux-gnu.conf  x86_64-linux-gnu_GL.conf

$ cat /etc/ld.so.conf.d/libc.conf
# libc default configuration
/usr/local/lib

$ cat /etc/ld.so.conf.d/x86_64-linux-gnu.conf
# Multiarch support
/lib/x86_64-linux-gnu
/usr/lib/x86_64-linux-gnu

$ cat /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf
/usr/lib/x86_64-linux-gnu/mesa
Just for my own sanity, I blew away my bladeRF "build" directory, re-created it, and then re-ran CMake. I noted that CMake found the desired libusb version:

Code: Select all

-- checking for module 'libusb-1.0'
--   found libusb-1.0, version 1.0.17
-- Looking for libusb_get_version in /usr/local/lib/libusb-1.0.so
-- Looking for libusb_get_version in /usr/local/lib/libusb-1.0.so - found
-- Looking for libusb_strerror in /usr/local/lib/libusb-1.0.so
-- Looking for libusb_strerror in /usr/local/lib/libusb-1.0.so - found
-- Looking for libusb_hotplug_register_callback in /usr/local/lib/libusb-1.0.so
-- Looking for libusb_hotplug_register_callback in /usr/local/lib/libusb-1.0.so - found
After installing libbladeRF, running ldconfig for good measure. and running bladeRF-cli, I see that it's using the desired library, based upon this open call: open("/usr/local/lib/libusb-1.0.so.0", O_RDONLY|O_CLOEXEC) = 3


So after trying to replicate this, it appears I've wound up at the dreaded, "It works for me..." scenario. Feel free to share some ld.conf.so related items here, and I'll take a look. I'm particularly curious to see if and why /usr/local/lib is located after your other items.

IHMO, getting things straightened out with ldconfig is the "correct." solution. However, some gross things you could do, but I'd recommend against are:
  • Place LD_LIBRARY_PATH=/usr/local/lib at the beginning of program (e.g., bladeRF-cli, gqrx) invocations or in your shell's runtime config.
    • This is really meant for quick and temporary things. I'm never really a fan of attempting to do anything permanent with this environment variable.
  • Start futzing around with symlinking the /lib entry to the /usr/local/lib one
    • I generally dislike messing with anything configured by the package manager. I also feel there's a good chance of unexpectedly breaking something else.
At the risk of suggesting a totally overkill solution - any particular reason why you want to be on 12.04 LTS? 13.10 provides a much newer kernel and libusb(x) 1.0.16...at least you won't have to mess around with this further.

Keep me posted...we'll figure something out. :)

- Jon


Update: Was missing a "make" invocation in my libusbx build example.
dk5ras
Posts: 70
Joined: Fri Mar 01, 2013 3:23 am

Re: undefined reference to libusb_get_version

Post by dk5ras »

The reason for 12.04 LTS is that with newer systems I do not manage to get OpenBTS and USRP1 running :) The other stuff I will start checking out later this day...

Ralph.
dk5ras
Posts: 70
Joined: Fri Mar 01, 2013 3:23 am

Re: undefined reference to libusb_get_version

Post by dk5ras »

With Kubuntu 13.10 everything is just fine, without any libusbx trouble :)

Guess I will keep to systems, one 12.04 for OpenBTS with USRP1, one 13.10 for the rest.

Ralph.
Post Reply