我尝试使用 android-tools/fastboot 命令,例如
fastboot devices
然后我收到错误消息
fastboot: symbol lookup error: fastboot: undefined symbol: _ZN13TemporaryFileD1Ev
我尝试了两种安装方式:
sudo apt install fastboot
和
sudo apt install android-tools-fastboot
两者的错误信息相同。
以下是一些输出:
pm@dev:~$ which fastboot
/usr/bin/fastboot
pm@dev:~$ dpkg -S /usr/bin/fastboot
fastboot: /usr/bin/fastboot
pm@dev:~$ ldd /usr/bin/fastboot
linux-vdso.so.1 (0x00007ffca6dbb000)
libziparchive.so.0 => /usr/lib/x86_64-linux-gnu/android/libziparchive.so.0 (0x00007f097209d000)
libsparse.so.0 => /usr/lib/x86_64-linux-gnu/android/libsparse.so.0 (0x00007f0971e95000)
libbase.so.0 => /usr/lib/x86_64-linux-gnu/android/libbase.so.0 (0x00007f0971c8b000)
libcutils.so.0 => /usr/lib/x86_64-linux-gnu/android/libcutils.so.0 (0x00007f0971a7f000)
libadb.so.0 => /usr/lib/x86_64-linux-gnu/android/libadb.so.0 (0x00007f097184e000)
libutils.so.0 => /usr/lib/x86_64-linux-gnu/android/libutils.so.0 (0x00007f097162c000)
libf2fs_utils.so.0 => /usr/lib/x86_64-linux-gnu/android/libf2fs_utils.so.0 (0x00007f0971429000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f09710a0000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f0970e88000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f0970a97000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f097087a000)
liblog.so.0 => /usr/lib/x86_64-linux-gnu/android/liblog.so.0 (0x00007f0970673000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f0970454000)
libcrypto.so.1.0.0 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f0970011000)
libbacktrace.so.0 => /usr/lib/x86_64-linux-gnu/android/libbacktrace.so.0 (0x00007f096fdf5000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f096fbf1000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f096f853000)
/lib64/ld-linux-x86-64.so.2 (0x00007f09724c7000)
libunwind.so.0 => /usr/lib/x86_64-linux-gnu/android/libunwind.so.0 (0x00007f096f60a000)
lib7z.so => /usr/lib/x86_64-linux-gnu/android/lib7z.so (0x00007f096f219000)
答案1
我也遇到了这个问题,
fastboot: symbol lookup error: fastboot: undefined symbol: _ZN13TemporaryFileD1Ev
我遇到的问题是一个较旧的adb
软件包,大约一年前安装的。升级此软件包和配套的android-libadb
apt-get install adb android-libadb
最新版本帮我解决了这个问题。
apt-get 还安装并更新了一大堆其他软件包。进一步调查显示,相关符号由 提供libbase.so.0
,而 又可以通过 进行更新
apt-get install android-libbase
我还没有测试过,这是否就足够了,但你可能会摆脱它。
答案2
请确保你已经安装了所有更新,并且你的存储库已正确设置(你拥有所有口袋主要的,宇宙,多元宇宙和受限制的启用所有更新仿生更新,仿生安全)如果不确定检查一下。
然后运行:
sudo apt-get update # to update package lists
sudo apt-get dist-upgrade # to get newest dependencies
我无法在全新安装并完全更新的 Ubuntu 18.04 LTS 上重现您的问题。
的ldd
输出与您的输出有几行不同(为了更清楚,删除了地址):
... libcrypto.so.0 => /usr/lib/x86_64-linux-gnu/android/libcrypto.so.0 libcrypto_utils.so.0 => /usr/lib/x86_64-linux-gnu/android/libcrypto_utils.so.0 libusb-1.0.so.0 => /lib/x86_64-linux-gnu/libusb-1.0.so.0 libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 ...
根据这些差异,我建议安装以下软件包:
sudo apt-get install android-libboringssl android-libcrypto-utils libudev1 libusb-1.0-0
然后重试。