techno_memo

個人用の技術メモ。python・ROS・AI系のソフトウェア・ツールなどの情報を記載

Ubuntu18.04用 ROS環境開発構築

この記事の目的

 Ubuntu18.04 LTS の開発環境(ROS/Python/VS Codeなど)構築手順についてまとめる (Ubuntu16.04からのアップデート時の防備録)

1.Ubuntu18.04 LTSについて

Ubuntuは2年おきにLTS (Long Term Support)という長期サポート(5年)の安定版をリリースする。

これまで使っていた16.04は2021年にサポート切れとなるのと、Ubuntu 18.04を使用しているネット上の事例が増えてきたのでアップデートを試みる。

参考サイト

www.sejuku.net

qiita.com

2. Ubuntu16.04からのアップデート手順

Ubuntu16.04をすでに利用している場合アップデート用のコマンドを利用すると設定やアプリを引き継いでUbuntuの更新を実施することができる。

アップデートのコマンドは下記のようになる。

sudo apt update
sudo apt upgrade 
sudo apt autoremove            # 不要パッケージの削除
sudo apt dist-upgrade           # 保留パッケージの更新
sudo apt install update-manager-core           # アップデートマネージャのインストール
sudo do-release-upgrade           # アップデートの実施 -d を付与すると開発中のバージョンへの更新も行う

ただし、aptコマンドの依存関係が正しく判定されず保留中のパッケージが残る場合は正しくインストールできない。 原因となっているパッケージを apt-get purge xxx などで削除してすべてのパッケージを最新として保留パッケージがない状態にする必要がある。

参考サイト

paloma69.hatenablog.com

3. nvidiaGPUドライバの更新

Ubuntu 16.04ではnvidiaのグラフィックボードドライバを公式サイトから手動でダウンロードしてインストールする必要があった。 (これによりUbuntuのパッチ更新でログインループが発生するなどの問題も多く起きていた)

Ubuntu18.04ではnvidia用ドライバの更新を下記コマンドのみで実施できる。

sudo ubuntu-drivers autoinstall  #nvidia GPU用ドライバの更新 (推奨ドライバが自動的にインストールされる)
sudo reboot #再起動
nvidia-smi #ドライバがインストールされていること/どのバージョンがインストールされているかの確認

続けてCUDA/cuDNNをインストールする場合はnvidiaの公式サイトの案内(debファイルをローカルに落としてインストールする場合)下記のようにできる。(CUDA10.2の場合)

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin
sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb
sudo apt-key add /var/cuda-repo-10-2-local-10.2.89-440.33.01/7fa2af80.pub
sudo apt-get update
sudo apt-get -y install cuda

インストール後に.bashrcにCUDAのインストールパスを追加しておく

export PATH="/usr/local/cuda/bin:$PATH" export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"

CUDNNについては公式サイトからダウンロードする (要ユーザー登録) その際、CUDAのバージョンにあった『cuDNN Library for Linux』をダウンロードし、展開後に下記コマンドでコピーする。

sudo cp -a cuda/lib64/* /usr/lib/cuda/lib64/
sudo cp -a cuda/include/* /usr/lib/cuda/include/

参考サイト taktak.jp

qiita.com

4. ROS melodicのインストール

Ubuntu 18.04ではUbuntu 16.04のROS kineticに変わりROS melodicをインストールする。

インストール手順はROS公式のインストール手順に従えば良い。

ただし、Ubuntu16.04からアップデートした場合ROS kineticの一部のパッケージが残っていることでmelodicで導入しようとするパッケージとの依存関係の干渉が発生してしまう可能性がある。

そのため下記コマンドを実施して古いROS関連パッケージを削除してからmelodicを導入したほうが良い。

sudo apt-get purge ros-* # ROS関連のaptパッケージの削除

5. その他の開発環境のインストール

Arduino IDE

Arduino公式サイトから"Linux 64 bits" を選択してダウンロードし、ファイルを展開後下記コマンドでインストール

sudo sh install.sh

Visual Studio Code と Pycharm

Ubuntu Softwareを起動し、Visual Studio Code/Pycharmで検索してインストール