このリポジトリは OS X Mountain Lion のみを対象にしています。 それ以外のディストリビューションでは正しく動作しない可能性が高いです。
Macに依存している部分はOpenGLのインクルードパスくらいしかないような気がするので、
各課題のsrc
フォルダの中へ移動して次のコマンドを実行すると、他の環境でも動くようになる気がします。
perl -i -ple 's/<OpenGL\/(.*\.h)>/<GL\/\1>/g' *
これはフォルダにあるあらゆるファイルに含まれる<OpenGL/hoge.h>
を<GL/hoge.h>
へ置き換えるPerlのワンライナーです。
Macを使っている人はこの処理は必要ないです。
このリポジトリに含まれるファイルをコンパイルするために必要なものがいくつかあります。
Homebrewを使っている場合はそこから最新安定版である1.3.2をインストールすると良いです。 ただ、僕のMacBook Pro 2011 Earlyでは最新安定版が動作しなかったのでスナップショットを入れました。
Xcodeに付属しているコンパイラではコンパイル出来ません。Homebrewにgccのパッケージは入っていませんが、
brew tap homebrew/versions
するなどしてパッケージを追加するとよいです。
僕はgcc4.8
を入れました。
Modeler
をコンパイルするためにはX11が必要なので、XQuartzを入れましょう。
今回のプログラムにはOMakeを用いています。 OMakeはHomebrewに収録されていないので、HomebrewでOCamlのパッケージマネージャーであるOPAMをインストールして OPAMからOMakeをインストールしてください。
基本的にimpressionist
など各課題フォルダの直下へ移動して、omake
コマンドでビルド出来ると思います。
もしビルド出来ない場合は課題の直下にあるOMakefile
を編集する必要があるかもしれません。
git clone https://github.com/coins11/interactive-computer-graphics.git
cd interactive-computer-graphics
cd impressionist
omake
思いついたことを列挙します。
- 文字コードと改行文字は
nkf
で UTF-8:Unix へ変換nkf -w -Lu --overwrite *
#include
する際のOpenGLのパスを修正perl -i -plE 's/<GL\/(.*\.h)>/<OpenGL\/\1>/g' *
- 干渉するファイルをいくつか削除
- 謎のヘッダファイルを削除