在Ubuntu上使用qemu
时遇到问题
hoan@hoan-pfiev09:~$ qemu-system-aarch64
qemu-system-aarch64: symbol
lookup error: qemu-system-aarch64: undefined symbol:
libusb_free_streams hoan@hoan-pfiev09:~$
(实际上,我要运行的命令:qemu-system-aarch64 -m 1024 -cpu cortex-a57 -M virt -nographic -kernel openwrt-arm64-qemu-virt.Image
)
尽管我使用命令sudo apt-get install libusb-1.0-0-dev
安装了libusb,但无法解决此问题。
hoan@hoan-pfiev09:~$ ldd /usr/bin/qemu-system-aarch64 | grep usb libusb-1.0.so.0 => /usr/local/lib/libusb-1.0.so.0 (0x00007f2bc8849000) libusbredirparser.so.1 => /usr/lib/x86_64-linux-gnu/libusbredirparser.so.1 (0x00007f2bc8641000) hoan@hoan-pfiev09:~$
该如何解决?
hoan@hoan-pfiev09:~$ ldd /usr/bin/qemu-system-aarch64 |grep usb libusb-1.0.so.0 => /usr/local/lib/libusb-1.0.so.0 (0x00007f705b013000) libusbredirparser.so.1 => /usr/lib/x86_64-linux-gnu/libusbredirparser.so.1 (0x00007f705ae0b000) hoan@hoan-pfiev09:~$ hoan@hoan-pfiev09:~$ hoan@hoan-pfiev09:~$ ls /usr/local/lib/libusb-1.0.* -lia 14156758 -rw-r--r-- 1 root root 598258 7月 23 19:25 /usr/local/lib/libusb-1.0.a 14156755 -rwxr-xr-x 1 root root 954 7月 23 19:25 /usr/local/lib/libusb-1.0.la 14156754 lrwxrwxrwx 1 root root 19 7月 23 19:25 /usr/local/lib/libusb-1.0.so -> libusb-1.0.so.0.1.0 14156753 lrwxrwxrwx 1 root root 19 7月 23 19:25 /usr/local/lib/libusb-1.0.so.0 -> libusb-1.0.so.0.1.0 14156267
-rwxr-xr-x 1 root root 343240 7月 23 19:25 /usr/local/lib/libusb-1.0.so.0.1.0 hoan@hoan-pfiev09:~$
hoan@hoan-pfiev09:~$ strings /usr/local/lib/libusb-1.0.a | grep libusb_free_streams hoan@hoan-pfiev09:~$
添加更多信息
hoan @ hoan-pfiev09:〜$ ldd / usr / bin / qemu-system-aarch64 | grep USB libusb-1.0.so.0 => /usr/local/lib/libusb-1.0.so.0 (0x00007f00a6281000)libusbredirparser.so.1 => /usr/lib/x86_64-linux-gnu/libusbredirparser.so.1(0x00007f00a6079000) hoan @ hoan-pfiev09:〜$
答案 0 :(得分:1)
此错误也已通过命令
修复hoan @ hoan-pfiev09:〜$ sudo ldconfig / lib / x86_64-linux-gnu /
答案 1 :(得分:0)
我已经看过几次类似的事情。我的自我猜测是,实际上,这个特定的QEMU软件包需要较新的libusb版本。因此,解决方案是将您的libusb升级到最新版本。或至少满足您的QEMU安装要求的版本。
此外,库名称通常是指向特定库版本的符号链接。您可能安装了较新版本的库,但是该链接仍指向较旧的版本。请检查libusb
中的/usr/local/lib/
库,并检查链接/lib/XXX/libusb-1.0.so
。
答案 2 :(得分:0)
感谢您阅读我的问题。 我找到了答案 [https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=711589][1] 这里有一个链接库不正确。
通过命令固定:
sudo ln -sf /lib/x86_64-linux-gnu/libusb-1.0.so.0 /usr/local/lib/libusb-1.0.so.0