Bluez 4.64 differences between hciconfig and lt-hciconfig
Hello everyone,
I've been for the past couple of hours trying to figure out why I get a symbol lookup error in hciconfig from the latest Bluez package in Slackware64-current. After installing and reinstalling the Slackware package I decided to try to compile the source from www.bluez.org. After running ./configure and make I noticed that in the tools/.libs directory there was hciconfig and lt-hciconfig. hciconfig produces the same output as hciconfig from the Slackware package but lt-hciconfig does not. Anybody know what the difference is between these two programs? bash-4.1# hciconfig hciconfig: symbol lookup error: hciconfig: undefined symbol: hci_bustostr bash-4.1# ./lt-hciconfig hci0: Type: BR/EDR Bus: USB BD Address: 00:24:7E:1D:AC:F4 ACL MTU: 1017:8 SCO MTU: 64:8 DOWN RX bytes:704 acl:0 sco:0 events:25 errors:0 TX bytes:352 acl:0 sco:0 commands:25 errors:0 |
Strange, on my Slackware64-current (T400 laptop with Slackware64-current and my KDE 4.4.3) I can run hciconfig and get no errors, only the correct and expected output.
Eric |
What causes symbol lookup errors? Running ldd -v on the two programs gives the following output:
bash-4.1# ldd -v /usr/sbin/hciconfig linux-vdso.so.1 => (0x00007fff646dd000) libbluetooth.so.3 => /usr/lib/libbluetooth.so.3 (0x00007f228f420000) libc.so.6 => /lib64/libc.so.6 (0x00007f228f0af000) /lib64/ld-linux-x86-64.so.2 (0x00007f228f639000) Version information: /usr/sbin/hciconfig: libc.so.6 (GLIBC_2.3) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.7) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.3.4) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.2.5) => /lib64/libc.so.6 /usr/lib/libbluetooth.so.3: libc.so.6 (GLIBC_2.4) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.3) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.3.4) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.2.5) => /lib64/libc.so.6 /lib64/libc.so.6: ld-linux-x86-64.so.2 (GLIBC_PRIVATE) => /lib64/ld-linux-x86-64.s o.2 ld-linux-x86-64.so.2 (GLIBC_2.3) => /lib64/ld-linux-x86-64.so.2 bash-4.1# bash-4.1$ ldd -v bluez-4.64/tools/.libs/hciconfig linux-vdso.so.1 => (0x00007fff1c9ff000) libbluetooth.so.3 => /usr/lib/libbluetooth.so.3 (0x00007ff417898000) libc.so.6 => /lib64/libc.so.6 (0x00007ff417527000) /lib64/ld-linux-x86-64.so.2 (0x00007ff417ab1000) Version information: .libs/hciconfig: libc.so.6 (GLIBC_2.3) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.7) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.3.4) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.2.5) => /lib64/libc.so.6 /usr/lib/libbluetooth.so.3: libc.so.6 (GLIBC_2.4) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.3) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.3.4) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.2.5) => /lib64/libc.so.6 /lib64/libc.so.6: ld-linux-x86-64.so.2 (GLIBC_PRIVATE) => /lib64/ld-linux-x86-64.s o.2 ld-linux-x86-64.so.2 (GLIBC_2.3) => /lib64/ld-linux-x86-64.so.2 bash-4.1$ ldd -v bluez-4-64/tools.libs/lt-hciconfig linux-vdso.so.1 => (0x00007fffabdff000) libbluetooth.so.3 => /home/mats/bluez-4.64/lib/.libs/libbluetooth.so.3 (0x00007fd34f26d000) libc.so.6 => /lib64/libc.so.6 (0x00007fd34eefc000) /lib64/ld-linux-x86-64.so.2 (0x00007fd34f486000) Version information: .libs/lt-hciconfig: libc.so.6 (GLIBC_2.3) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.7) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.3.4) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.2.5) => /lib64/libc.so.6 /home/mats/bluez-4.64/lib/.libs/libbluetooth.so.3: libc.so.6 (GLIBC_2.4) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.3) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.3.4) => /lib64/libc.so.6 libc.so.6 (GLIBC_2.2.5) => /lib64/libc.so.6 /lib64/libc.so.6: ld-linux-x86-64.so.2 (GLIBC_PRIVATE) => /lib64/ld-linux-x86-64.so.2 ld-linux-x86-64.so.2 (GLIBC_2.3) => /lib64/ld-linux-x86-64.so.2 Do I need to reinstall gcc or glibc, since no one else gets this error in hciconfig? |
Found multiple versions of libbluetooth in /usr/lib and /usr/lib64. When I moved the ones found in /usr/lib hciconfig works...
|
All times are GMT -5. The time now is 01:04 AM. |