web-dev-qa-db-ja.com

Ubuntu 20.04 LTS(Focal Fossa)にarm-none-eabi-gdbをインストールする方法

Gcc-arm-embeddedの一部としてarm-none-eabi-gdbをインストールしようとしました。私はPPAを追加しました:

Sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa

そして実行された:

Sudo apt install gcc-arm-embedded 

それは次のように応答しました:

Err:8 http://ppa.launchpad.net/team-gcc-arm-embedded/ppa/ubuntu focal Release
  404  Not Found [IP: 91.189.95.83 80]

私の知る限り-gcc-arm-embeddedにはUbuntu 20のバージョンがありません。このPPAのリリースバージョンをSoftware&Updatesでbionicに変更し、エラーを回避できるようにしました。 404。

Ubuntu 20にはlibisl22がありますが、gcc-arm-embeddedをインストールしようとすると、依存関係が満たされなくなります。

The following packages have unmet dependencies:
 gcc-arm-embedded : Depends: libisl15 (>= 0.15) but it is not installable
E: Unable to correct problems, you have held broken packages.

Aptはlibisl22とlibisl-devの2つのバージョンしか提供していないため、要求されたバージョンのlibislをインストールする方法を見つけることができませんでした。

Arm-none-eabi-gdbのインストール方法についてアドバイスが必要です。ありがとうございました!

ARM PPAの使用を廃止することにより、私たちの生活をより簡単にすること(皮肉)を決定したことが判明しました-彼らの ランチパッドのページ が発表しました: "...今後、すべての新しいバイナリパッケージとソースパッケージがLaunchpadでリリースされるわけではありません... "。

したがって、最新のarm-none-eabi-gdbを利用するには、gcc-arm-embeddedを手動でインストールする必要があります。

システムからarm-none-eabi-gccを削除します。

Sudo apt remove gcc-arm-none-eabi

最新バージョンをダウンロード(Linux x86_64 Tarball) 彼らのウェブサイトから 、そのMD5を確認してください。それをいくつかのディレクトリに解凍します。/usr/share /を使用しました:

Sudo tar xjf gcc-arm-none-eabi-your-version.bz2 -C /usr/share/

システム全体でバイナリにアクセスできるようにリンクを作成します。

Sudo ln -s /usr/share/gcc-arm-none-eabi-your-version/bin/arm-none-eabi-gcc /usr/bin/arm-none-eabi-gcc 
Sudo ln -s /usr/share/gcc-arm-none-eabi-your-version/bin/arm-none-eabi-g++ /usr/bin/arm-none-eabi-g++
Sudo ln -s /usr/share/gcc-arm-none-eabi-your-version/bin/arm-none-eabi-gdb /usr/bin/arm-none-eabi-gdb
Sudo ln -s /usr/share/gcc-arm-none-eabi-your-version/bin/arm-none-eabi-size /usr/bin/arm-none-eabi-size

依存関係をインストールします。 readme.txtにリストされているARMの「完全なインストール手順」では、依存関係が何であるかはわかりません。試行錯誤によってそれを理解する必要があります。私のシステムでは、強制的に機能させるためにシンボリックリンクを手動で作成する必要がありました。

Sudo apt install libncurses-dev
Sudo ln -s /usr/lib/x86_64-linux-gnu/libncurses.so.6 /usr/lib/x86_64-linux-gnu/libncurses.so.5
Sudo ln -s /usr/lib/x86_64-linux-gnu/libtinfo.so.6 /usr/lib/x86_64-linux-gnu/libtinfo.so.5

機能するかどうかを確認します。

arm-none-eabi-gcc --version
arm-none-eabi-g++ --version
arm-none-eabi-gdb --version
arm-none-eabi-size --version