carla Linux UE4

carla環境のインストール Linux編

自動運転環境のcarlaをLinux環境にインストールした備忘録

■ハードウェア構成
CPU Corei7-4770@3.40Ghz
メモリ 32G
GPU nvidiaGTX960 2G

■インストールしたパッケージ
https://www.ubuntulinux.jp/products/JA-Localized/download
ubuntu-ja-18.04.3-desktop-amd64.iso
RufusでUSBメモリに書き込み
https://rufus.ie/ja/
前面USB端子だとブートせず
32Gのメモリを使うと失敗
8Gのメモリで背面USB端子に接続

■Ubuntuのインストール
USBメモリから起動すると
コンソールメニューが立ち上がるのでそのままインストール
デスクトップ画面になってもインストールアイコンがクリップ
再起動

■ビデオドライバーのインストール
nvidaのドライバーを入れていおく
 インストールしたデフォルトドライバだとvalkanが対応していなかったため
  https://linuxconfig.org/how-to-install-the-nvidia-drivers-on-ubuntu-18-04-bionic-beaver-linux
再起動

■carlaのページに沿ってインストール
https://carla.readthedocs.io/en/latest/build_linux/
 at least a 6 GB GPU although 8 GBと要件を満たしていなっが…

■必要ソフトウェアをインストール
sudo apt-get update
sudo apt-get install wget software-properties-common
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
aptリポジトリを書き換えたいが失敗するので以下の作業を行う
 https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test
 参考に /etc/apt/sources.listに直接書き込む
 Bionic(18.04) を選択すると書き込むテキスト表示される

deb https://ppa.launchpadcontent.net/ubuntu-toolchain-r/test/ubuntu bionic main 
deb-src https://ppa.launchpadcontent.net/ubuntu-toolchain-r/test/ubuntu bionic main 

 
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
 この行もパブリックキーが認証できないと失敗するので以下の作業を行う
 The following signatures couldn't be verified because the public key is not available:
NO_PUBKEY 4F4EA0AAE5267A6C
 以下を実行 -recv-keys の引数は 環境によって変わる
 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4F4EA0AAE5267A6C
 
・さらに必要なツールをインストール(18.04の場合)
sudo apt-get install build-essential clang-8 lld-8 g++-7 cmake ninja-build libvulkan1 python python-pip python-dev python3-dev python3-pip libpng-dev libtiff5-dev libjpeg-dev tzdata sed curl unzip autoconf libtool rsync libxml2-dev git

・clangのライブラリ切替
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/lib/llvm-8/bin/clang++ 180
sudo update-alternatives --install /usr/bin/clang clang /usr/lib/llvm-8/bin/clang 180

・pipをバージョンアップ
pip3 install --upgrade pip
pip install --upgrade pip
 pip3はwargingがでたが気にせず続けました

・pythonのライブラリをインストール
pip install --user setuptools
pip3 install --user -Iv setuptools==47.3.1
pip install --user distro
pip3 install --user distro
pip install --user wheel
pip3 install --user wheel auditwheel

■UnrealEngineのビルド
githubからCarla用UE4をインストール
git clone --depth 1 -b carla https://github.com/CarlaUnreal/UnrealEngine.git ~/UnrealEngine_4.26
 エラーになったので直接zipをダウンロードして~/UnrealEngine_4.26以下に展開
 ディレクトリを移動してセットアップとmakeを実行
cd ~/UnrealEngine_4.26
./Setup.sh && ./GenerateProjectFiles.sh && make

 UE4が起動するかチェック
 cd ~/UnrealEngine_4.26/Engine/Binaries/Linux && ./UE4Editor

■carlaのプロジェクトの作成と起動
・ダウンロードの高速化のためaria2をインストールしておく
sudo apt-get install aria2
・プロジェクトをクローン
git clone https://github.com/carla-simulator/carla
・アセットを取得更新
./Update.sh
・環境変数を設定
export UE4_ROOT=~/UnrealEngine_4.26
 次回起動のため~/.bashrcもしくは~/.profileを編集
・PythonAPIのビルド
make PythonAPI
 失敗したときは引数指定でやるとうまくいく(今回はmake PythonAPIでうまくいった)
 make PythonAPI ARGS="--python-version=2.7, 3.6, 3.7, 3.8"
・起動
 make launch

動きはしたがやはり2Gしかメモリがない状況では厳しい…
LogVulkanRHI: Warning: Failed to allocate Device Memory,
が出続けている。
また、しばらくすると起動しなくなる、何かのシェーダーのコンパイルできた後か?
Savedディレクトリを消すとまた起動する

-carla, Linux, UE4