C++
Ubuntu
openFrameworks
docker

UbuntuでopenFrameworksが動かないときは、Dockerを使おう

はじめに

ubuntuでopenFrameworksを動かすのに非常に手間取りました。
エラーになりうる原因は、
Ubuntu, oF, cuda, cudnn, gcc, boost... などなどのバージョンが合っていないためで、
多すぎます。

イライラしてやる気が失せ始めたら、dockerを使ってみましょう。

前提

  • nvidia-dockerが動く

参照: Ubuntu 16.04 LTS で NVIDIA Docker を使ってみる

openFrameworksのサンプルを動かしてみる

$で始まる行はローカル環境、
#で始まる行はdocker環境とします。

このとき、以下のコマンドを打つだけで動くはずです。

$ sudo docker pull ryokomy/openframeworks-cuda
$ xhost +
$ xhost local:
$ sudo nvidia-docker run -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --privileged ryokomy/openframeworks-cuda bash

# cd /root/src/openFrameworks/examples/gl/shaderExample
# make
# make run

https://gyazo.com/55536b2b559591e38a31004848de49ed

参照: Dockerコンテナの中でGUIアプリケーションを起動させる

終わりに

今回openFrameworksを動かしたdocker内の環境は以下のようになっています。
- OS: Ubuntu14.04
- openFrameworks: 0.9.8
- Cuda: 8.0
- cudnn: 5
もしみなさんの環境ですぐに動いてくれたのなら幸いです。