Невозможно запустить arm-none-eabi-gdb: невозможно найти libncurses.so.5
Я недавно установил набор инструментов ARM gcc в Ubuntu 18.10, используя sudo apt-get install gcc-arm-none-eabi
и я пытаюсь бежать arm-none-eabi-gdb
,
Всякий раз, когда я пытаюсь запустить его, я получаю следующую ошибку:
arm-none-eabi-gdb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
Я попытался установить libncurses, используя sudo apt-get install libncurses5-dev libncursesw5-dev
- библиотеки установлены успешно, но у меня все та же проблема.
Я также проверил, чтобы убедиться, что файл был 64-битным: arm-none-eabi-gdb: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.24, BuildID[sha1]=340c78388950836989ecda5c89474e1bf7b03820, stripped
Я не уверен, что попробовать отсюда. Любая помощь будет оценена.
4 ответа
Отсюда я установил Ubuntu Desktop 18.10, но не смог установить gcc-arm-none-eabi:
ubuntu@ubuntu:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.10
Release: 18.10
Codename: cosmic
ubuntu@ubuntu:~$ sudo apt-get install gcc-arm-none-eabi
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package gcc-arm-none-eabi
Затем я установил libncurses5-dev и gcc-linaro-7.3.1-2018.05-x86_64_arm и получил ту же ошибку, связанную с.so. Поскольку у меня нет этой проблемы ни с 16.04, ни с 18.04, я бы посоветовал вам скомпилировать последнюю версию GDB из исходного кода, чтобы избежать проблемы несоответствия библиотеки пакетов / динамических ссылок в Ubuntu 18.10:
sudo apt-get install build-essential libncurses5-dev libexpat1-dev texinfo-doc-nonfree
pushd /tmp
wget -qO- ftp://ftp.gnu.org/gnu/gdb/gdb-8.2.tar.xz | tar Jxv
mkdir gdb
cd gdb
../gdb-8.2/configure --enable-tui --with-expat --prefix=/usr/local --target=arm-eabi --program-prefix=arm-eabi-
make all
sudo make install
popd
Установить не удастся, потому что makeinfo отсутствует, хотя я установил texinfo-doc-nonfree, но будут установлены двоичные файлы:
ls /usr/local/bin
arm-eabi-gdb arm-eabi-gdb-add-index arm-eabi-run
И на этот раз arm-eabi-gdb запустится корректно:
arm-eabi-gdb --version
GNU gdb (GDB) 8.2
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
arm-eabi-gdb -tui тоже подойдет - я призываю вас использовать режим tui, он вам должен понравиться так же, как и я - я думаю.
Я работал над установкой Kubuntu19.10:
apt install libncurses5
Не устанавливать 32-разрядные версии библиотеки "-dev", development или ":i386".
версия stm 32 ide 1.5, используя отладку st-link, попытался загрузить все dev и i386, но безуспешно, затем
sudo apt установить libncurses5*
Это исправило это.
Я заставил его работать над Kubuntu19.10, загрузив версию 2019 года с arm.com вместо версии 2015 года с панели запуска.