Linux
以下は、いくつかの Linux ディストリビューション向けのインストールコマンドです。
必須パッケージ
Ubuntu 18.04 以降 / Debian stretch 以降
注記
gdb-multiarchは ARM の Cortex-M プログラムをデバッグする際に使用する GDB コマンドです
sudo apt-get install \
gdb-multiarch \
minicom \
openocd
Ubuntu 14.04 と 16.04
注記
arm-none-eabi-gdbは ARM の Cortex-M プログラムをデバッグする際に使用する GDB コマンドです
sudo apt-get install \
gdb-arm-none-eabi \
minicom \
openocd
Fedora 23 以降
sudo dnf install \
minicom \
openocd \
gdb
Arch Linux
注記
arm-none-eabi-gdbは ARM の Cortex-M プログラムをデバッグする際に使用する GDB コマンドです
sudo pacman -S \
arm-none-eabi-gdb \
minicom \
openocd
その他のディストリビューション
注記
arm-none-eabi-gdbは ARM の Cortex-M プログラムをデバッグする際に使用する GDB コマンドです
ARM のビルド済み
ツールチェーン
のパッケージがないディストリビューションでは、“Linux 64-bit” ファイルをダウンロードし、
その bin ディレクトリをパスに追加してください。
その方法の一例を以下に示します。
mkdir -p ~/local && cd ~/local
tar xjf /path/to/downloaded/file/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
次に、使用しているエディタで適切な
シェルの初期化ファイル(例: ~/.zshrc または ~/.bashrc)の PATH に追記します:
PATH=$PATH:$HOME/local/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux/bin
オプションのパッケージ
Ubuntu / Debian
sudo apt-get install \
bluez \
rfkill
Fedora
sudo dnf install \
bluez \
rfkill
Arch Linux
sudo pacman -S \
bluez \
bluez-utils \
rfkill
udev ルール
これらのルールにより、F3 やシリアルモジュールのような USB デバイスを root 権限、つまり
sudo なしで使用できます。
lsusb の出力にある idVendor と idProduct を使って、/etc/udev/rules.d に 99-openocd.rules
を作成します。
たとえば、USB ケーブルを使って STM32F3DISCOVERY をコンピューターに接続します。 ケーブルは必ず “USB ST-LINK” ポート、つまり基板の縁の中央にある USB ポートに接続してください。
lsusb を実行します:
lsusb | grep ST-LINK
次のような結果になるはずです:
$ lsusb | grep ST-LINK
Bus 003 Device 003: ID 0483:374b STMicroelectronics ST-LINK/V2.1
したがって、idVendor は 0483 で、idProduct は 374b です。
/etc/udev/rules.d/99-openocd.rules を作成する:
sudo vi /etc/udev/rules.d/99-openocd.rules
内容は次のとおりです:
# STM32F3DISCOVERY - ST-LINK/V2.1
ATTRS{idVendor}=="0483", ATTRS{idProduct}=="374b", MODE:="0666"
古いデバイスでオプションの USB <-> FT232 ベースのシリアルモジュールを使う場合
/etc/udev/rules.d/99-ftdi.rules を作成します:
sudo vi /etc/udev/rules.d/99-openocd.rules
内容は次のとおりです:
# FT232 - USB <-> シリアルコンバーター
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE:="0666"
次のコマンドで udev ルールを再読み込みします:
sudo udevadm control --reload-rules
ボードがコンピューターに接続されている場合は、いったん取り外してから再度接続してください。
次に、next section に進みます。