Io on Linux

Io の Windows でのビルド法 (http://d.hatena.ne.jp/kizz/20031203#p1)

では Linux のも書いときます。ちなみに IoDesktop-2003-10-28 (ちょっと古い)

Mesa のヘッダがおかしいようなので、
IoDesktop/OpenGL/IoGLconst.h の 622 行目

{"GL_CLIENT_ALL_ATTRIB_BITS",GL_CLIENT_ALL_ATTRIB_BITS},

コメントアウト。(追記: 2003-11-23 では不要でした)

IoDesktop/OpenGL/IoGLUconst.h は全然ダメなので、

21,22c21,22
<       {"GLU_VERSION_1_2",GLU_VERSION_1_2},
<       {"GLU_VERSION_1_3",GLU_VERSION_1_3},
    • -
> //{"GLU_VERSION_1_2",GLU_VERSION_1_2}, > //{"GLU_VERSION_1_3",GLU_VERSION_1_3}, 32c32 < {"GLU_INVALID_OPERATION",GLU_INVALID_OPERATION},
    • -
> //{"GLU_INVALID_OPERATION",GLU_INVALID_OPERATION}, 38a39 > #if 0 202a204 > #endif

すごいいいかげん。Mesa を新しくすると良くなったりするかもしれない。

IoDesktop/Audio/Makefile の 31 行目で、

sh -ec 'cd base/portaudio; env MAKEFLAGS= $(MAKE) all'

sh -ec 'cd base/portaudio; env MAKEFLAGS= $(MAKE) -f Makefile.linux all'


に。(追記: 2003-11-23 では不要でした)

途中で portaudio をインストールしたがるので、(しぶしぶ) sudo make。(追記: 2003-11-23 では不要でした)

さて、根っこの IoDesktop/Makefile もおかしい。
108 行目の、

CCLIBS += -lPortAudio
COPY += Audio/base/portaudio/libPortAudio.a

CCLIBS += -lportaudio

が正解かな。(追記: 2003-11-23 では COPY += Audio/base/portaudio/lib/libportaudio.a を COPY += Audio/base/portaudio/libportaudio.a に)

あと pthread をリンクしないとマズいので、さっきのすぐ下あたりに、

CCLIBS += -lpthread

と加える。(追記: 2003-11-23 では不要でした)

これで make が通った。

なにかあれば下記メールアドレスへ。
shinichiro.hamaji _at_ gmail.com
shinichiro.h