開発環境のセットアップ
続いて、Jetson TK1へ開発環境をセットアップします。ここでは、CUDA ToolkitとOpenCVライブラリをセットアップします。Jetson TK1を起動し、ターミナルを開いてください。
「libglx.so」上書き禁止の設定
まず、sudo apt upgrade コマンドでシステムをアップグレードする際に、「libglx.so」ファイルを上書きしないようシステムを設定します。このファイルを上書きしてしまうと、GUIが利用できなくなってしまいます。
sudo apt-mark hold xserver-xorg-core
環境変数の設定
次に、環境変数を設定します。
cd ~/ echo 'export PATH=/usr/local/cuda-6.5/bin:$PATH' | sudo tee -a /etc/bash.bashrc echo 'export LD_LIBRARY_PATH=/usr/local/cuda-6.5/lib:$LD_LIBRARY_PATH' | sudo tee -a /etc/bash.bashrc
上記のコマンドを実行したら、一度ターミナルを閉じて、再度ターミナルを開いてください。設定が反映されたことは、コマンドで確認できます。
echo $PATH echo $LD_LIBRARY_PATH
ダウンロードとインストール
CUDA ToolkitとOpenCV For Tegraのセットアップに必要なファイルをダウンロードします。次のコマンドで「CUDA 6.5 Toolkit for L4T Rel 21.2」と「OpenCV4Tegra for L4T 21.x」をダウンロードしてください。
cd $HOME mkdir SETUP cd $HOME/SETUP wget http://developer.download.nvidia.com/compute/cuda/6_5/rel/installers/cuda-repo-l4t-r21.2-6-5-prod_6.5-34_armhf.deb wget http://developer.download.nvidia.com/embedded/OpenCV/L4T_21.2/libopencv4tegra-repo_l4t-r21_2.4.10.1_armhf.deb
ダウンロードしたら、まずCUDA Toolkitを次のコマンドでインストールします。
sudo dpkg -i cuda-repo-l4t-r21.2-6-5-prod_6.5-34_armhf.deb sudo apt update sudo apt install -yV cuda-toolkit-6-5 cuda-samples-6-5 sudo usermod -aG video ubuntu
次のコマンドを実行して、コンパイラのバージョンが表示されればインストールは成功です。
nvcc --version
さらに次のコマンドで、OpenCV For Tegraをインストールしてください。
sudo dpkg -i libopencv4tegra-repo_l4t-r21_2.4.10.1_armhf.deb sudo apt-add-repository universe sudo apt update sudo apt upgrade -yV sudo apt install -yV libopencv4tegra libopencv4tegra-dev
次のコマンドを実行して、ファイルが表示されればインストールは成功です。
ls /usr/lib/libopencv_* ls /usr/include/opencv*
サンプルプログラムのセットアップ
最後に、サンプルプログラムをセットアップします。次のコマンドでNVIDIA提供のサンプルプログラムをホームディレクトリ以下にコピーします。
cd $HOME cuda-install-samples-6.5.sh ./ cd NVIDIA_CUDA-6.5_Samples sudo apt install -yV openmp-bin libopenmpi-dev
次に、サンプルプログラムをコンパイルしますが、そのままGUI上のターミナルで全サンプルプログラムのコンパイルを実行すると、たびたび操作不能になります。[Ctrl]+[Alt]+[F1]キーを押してCUI画面に移行し、CUI上でコンパイルを実行してください。[Enter]キーを押すとログインプロンプトが表示されるので、ユーザubuntu、パスワードubuntuでログインしてください。それから次のコマンドを実行し、コンパイルを行います。
cd NVIDIA_CUDA6.5_Samples make
make コマンドを、make > make.log 2> make.err < /dev/null & とすることで、コンパイルのログを残すことができます。
コンパイルが完了したら、いくつかサンプルプログラムを実行できる状態になっています。[Ctrl]+[Alt]+[F7]キーを押してGUI画面に戻ってください。
試しに1つ、サンプルプログラムを実行してみましょう。サンプルプログラムが配置されているディレクトリに移動して、deviceQuery を実行してみてください。CUDAコアの数、GPUの動作周波数、メモリの動作周波数、メモリのサイズなど、CUDAプログラミングに必要なTegra K1 chipの基本情報が表示されます。
cd $HOME/NVIDIA_CUDA-6.5_Samples/1_Utilities/deviceQuery ./deviceQuery ./deviceQuery Starting... CUDA Device Query (Runtime API) version (CUDART static linking) Detected 1 CUDA Capable device(s) Device 0: "GK20A" CUDA Driver Version / Runtime Version 6.5 / 6.5 CUDA Capability Major/Minor version number: 3.2 (以下略)
