我尝试在 x86-64 ubuntu 20.04 机器上更新 arm64 交叉工具。
已安装来自 arm 的交叉工具 gcc-arm-11.2-2022.02-x86_64-aarch64-none-elf。
当我运行 aarch64-none-elf-gdb 时,它会显示此消息。
ckim@ckim-ubuntu:~/test$ aarch64-none-elf-gdb
aarch64-none-elf-gdb: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
我发现我的系统上有一些 libpython 包。
ckim@ckim-ubuntu:~/test$ dpkg -l | grep libpython
ii libpython2-stdlib:amd64 2.7.17-2ubuntu4 amd64 interactive high-level object-oriented language (Python2)
ii libpython2.7:amd64 2.7.18-1~20.04.1 amd64 Shared Python runtime library (version 2.7)
ii libpython2.7-minimal:amd64 2.7.18-1~20.04.1 amd64 Minimal subset of the Python language (version 2.7)
ii libpython2.7-stdlib:amd64 2.7.18-1~20.04.1 amd64 Interactive high-level object-oriented language (standard library, version 2.7)
ii libpython3-dev:amd64 3.8.2-0ubuntu2 amd64 header files and a static library for Python (default)
ii libpython3-stdlib:amd64 3.8.2-0ubuntu2 amd64 interactive high-level object-oriented language (default python3 version)
ii libpython3.8:amd64 3.8.10-0ubuntu1~20.04.4 amd64 Shared Python runtime library (version 3.8)
ii libpython3.8-dev:amd64 3.8.10-0ubuntu1~20.04.4 amd64 Header files and a static library for Python (v3.8)
ii libpython3.8-minimal:amd64 3.8.10-0ubuntu1~20.04.4 amd64 Minimal subset of the Python language (version 3.8)
ii libpython3.8-stdlib:amd64 3.8.10-0ubuntu1~20.04.4 amd64 Interactive high-level object-oriented language (standard library, version 3.8)
当我这样做时sudo apt search libpython
,我只看到 libpython3.8 或 libpython3.9 的内容。在这种情况下我该怎么办?
添加
我发现dpkg -L libpython3.8
,我在 /usr/lib/x86_64-linux-gnu 目录中有 libpython3.8.so.1.0。所以我去了那里并执行了
sudo ln -s libpython3.8.so.1.0 libpython3.6m.so.1.0
,调试器运行了(尽管我看不到这个新版本我想要的变化)。我不确定这是不是正确的方法。
答案1
从 Ubuntu 18 升级到 20 后,我遇到了与您相同的问题:
dpkg -L libpython3.8
cd /usr/lib/x86_64-linux-gnu
sudo ln -s libpython3.8.so.1.0 libpython3.6m.so.1.0
这对我帮助很大,谢谢!