1026 : SuperColliderをソースコードからビルドする : 小林茂 


------------------------------------------------------------------------
DSPマガジン 2004.03.06 No.1026
------------------------------------------------------------------------

SuperColliderをソースコードからビルドする
小林茂

今回ご紹介する方法は、次のウェブページで紹介されている方法を元にしたもの
です。このページでは英語で説明されていますが、これを元に、日本語でできる
だけ分かりやすく書いたつもりです。ちょっと長いですが読んでみて下さい。

http://swiki.hfbk-hamburg.de:8888/MusicTechnology/554


<はじめに>

皆さんはSuperCollider 3を動かしてみたことがあるでしょうか?その時、どの
ようにしてアプリケーションを入手しましたか?SuperCollider 3のアプリケー
ションを入手する最も簡単な方法は、「スナップショット」というものをダウン
ロードして来ることです。

この「スナップショット」というのは、適当に区切りのいいところで誰かが「ビ
ルド」してくれたものです。使い始めた頃は、この「スナップショット」を使っ
ているだけでも十分かもしれません。

しかし、最新のバージョンを使いたい時には、自分で「ビルド」する必要があり
ます。例えば、SuperColliderのメーリングリストでバグの報告や新機能の要望
を出したとします。それに対して、開発メンバーの誰かが応えてくれて「変更し
てCVSに入れておいたから」といわれたといわれるかもしれません。運良く、誰
かがすぐにスナップショットをビルドしてくれればいいのですが、そうでない場
合も多いでしょう。こうした時に、自分でビルドして最新のSuperCollider 3を
手に入れる必要があるのです。

ビルドには開発ツールを使う必要があるのですが、開発ツールなんて使うのは初
めて、という方は躊躇してしまうかもしれません。しかし、ゆっくりと、確実に
進めていけばそんなに難しいことではないのです。自分でビルドすることができ
る様になれば、また一つ可能性が広がることになりますので、是非がんばりま
しょう。


<準備>

以下の説明は、Mac OS X 10.3(Panther)での操作について書いたものです。今
後、SuperCollider 3はPantherを前提とする様になると予想されますので、もし
まだPantherにアップグレードしていない場合は、この機会にアップグレードす
ることを強くおすすめします。

また、既にPantherを使っている場合でも、Developer Toolsをインストールして
いないのであればDeveloper Toolsをインストールする必要があります。
Developer Toolsは、Pantherのアップグレード版などを購入した場合にはパッ
ケージに付属している場合があります。そうでない場合には、ADC(Apple
Developer Connection)のメンバーになってダウンロードする必要があります。
Developer Toolsをダウンロードするだけであれば、オンラインという無料のメ
ンバーになるだけで十分です。

http://developer.apple.com/ja/membership/

Developer Toolsのインストールは簡単で、CDの場合にはCDをインストールし、
ダウンロードした場合にはディスイメージをダブルクリックしてマウントして、
その中のインストーラを起動し、後はインストーラの指示に従うだけです?うま
くいったでしょうか?うまくいったら、次のステップに進みます。


<libsndfileをビルドする>

まず、SuperColliderをビルドする前に、libsndfileというライブラリをビルド
する必要があります。libsndfileはオープンソースのライブラリで、様々な種類
のサウンドファイルを取り扱うためのものです。SuperCollider 3は、サウンド
ファイルを扱うのにこのライブラリを使用しますので、SuperCollider 3よりも
先に、このライブラリをビルドする必要があるのです。

libsndfileのソースは、こちらのウェブページからダウンロードすることができ
ます。

http://www.mega-nerd.com/libsndfile/

こちらのページの下の方に「Download」というコーナーがありますので、そこか


http://www.mega-nerd.com/libsndfile/libsndfile-1.0.7.tar.gz

というファイルをダウンロードして下さい。ダウンロードが終了すると、自動的
にこのファイルが展開され、libsndfile-1.0.7というファイルができると思いま
す。

このファイルをダウンロードしたら、適当な場所に置きます。私は開発用のプロ
ジェクトを置く場所として次のディレクトリを使っていますので、その下に置き
ます。

/Users/kotobuki/develop/

このディレクトリに先ほどのディレクトリを置くと、次の様になります。

/Users/kotobuki/develop/libsndfile-1.0.7

いよいよlibsndfileをビルドします。まず、ターミナル(Terminal)を起動しま
す。ターミナルは「アプリケーション」フォルダの中の「ユーティリティー」
フォルダの中に入っています。ターミナルを起動すると、次の様にプロンプトが
表示されます。

Last login: Thu Mar 4 20:27:30 on ttyp1
Welcome to Darwin!
kotobuki-PBG4:~ kotobuki$

以降は、「$」に続けてコマンドを入力していきます。

まず、先ほどのディレクトリに移動します。移動するためのコマンドは「cd」で
すので、「cd」に続けてパスを入力します。パスを入力するための最も簡単な方
法は、Finderで「libsndfile-1.0.7」のフォルダを選択して、ターミナルにド
ラッグ&ドロップすることです。この時、「cd」の後にスペースが必要になるこ
とに注意して下さい。

$ cd /Users/kotobuki/develop/libsndfile-1.0.7/

もう一つの方法は、このパスを手で入力することです。MacはGUIを中心に作業し
ますので、コマンドを手で入力するのには抵抗があるという方もいらっしゃるか
もしれません。しかし、慣れてしまうと、マウスを使ってドラッグ&ドロップす
るよりも、キーボードで入力する方がずっと早いのです。最初は慣れないかもし
れませんが、少しずつ試してみるといいですよ。

ここで、一つ覚えておくと便利なことがあります。ターミナルでは途中までコマ
ンドを入力した後で「tab」キーを押すことで、残りの部分を補完することがで
きます。例えば、「cd /Users/k」まで入力した後で「tab」キーを押すと、
「cd /Users/kotobuki/」まで自動的に入力されます。これを繰り返すと、最小
限のステップで目的のコマンドを入力することができます。

次に、「configure」というコマンドを実行します。「configure」というのは、
それぞれの環境に合わせてビルドの準備をするものです。libsndfileはMac OS X
だけでなくLinuxやWindowsでもビルドできる様になっていますので、まずこのコ
マンドを実行して、Mac OS Xでビルドする準備を整えるのです。

なお、「configure」の前に「./」というのがついていますが、これは「この
ディレクトリのconfigureを使う」というのを明確にするための書き方です。単
に「configure」とするだけですと、他の優先度の高いディレクトリにあるコマ
ンドが実行されてしまう場合がありますので、それを避けるためにこうします。

$ ./configure

このコマンドを入力すると次の様にメッセージが表示され、数分間続きます。所
要時間は、コンピュータのスペックなどによって変化します。

checking build system type... powerpc-apple-darwin7.2.0
checking host system type... powerpc-apple-darwin7.2.0
checking target system type... powerpc-apple-darwin7.2.0

...

Compiling some other packages against libsndfile may require
the addition of "/usr/local/lib/pkgconfig" to the
PKG_CONFIG_PATH environment variable.

この様なメッセージが表示され、プロンプトが表示されたら次のステップに進み
ます。次は「make」というステップで、ここで実際のビルドを行います。

$ make
Making all in man
make[1]: Nothing to be done for `all'.
Making all in doc
make[1]: Nothing to be done for `all'.

...

creating aiff_rw_test
make[1]: Nothing to be done for `all-am'.

どうでしょうか?うまくいきましたか?慣れないうちは成功したのか失敗したの
かさえ分からないかもしれませんが、通常は特に問題なく成功しているはずで
す。最後に、ここでビルドしたlibsndfileをインストールします。使用するコマ
ンドは「sudo make install」です。

$ sudo make install
Password:
Making install in man
make[2]: Nothing to be done for `install-exec-am'.

...

make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Nothing to be done for `install-exec-am'.
/bin/sh ./mkinstalldirs /usr/local/lib/pkgconfig
/usr/bin/install -c -m 644 sndfile.pc
/usr/local/lib/pkgconfig/sndfile.pc

以上でlibsndfileのビルドは終わりです。どうでしたか?次々とメッセージが
ターミナルに表示されて面食らったかもしれませんが、落ち着いてやれば非常に
簡単に終わると思います。これでSuperCollider 3をビルドするための前準備が
終わりました。


<SuperColliderをビルドする>

SuperColliderはSoureForgeというオープンソースのソフトウェア用のサービス
を利用しています。まず最初に、このサービスにログインしてソースを取得しま
す。

まず、先ほどの開発用ディレクトリに移動します。

$ cd /Users/kotobuki/develop/

次に、CVSサーバーにログインします。

$ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/supercollider
login

すると、次の様なメッセージが表示されます。ここで、「CVS password:」に続
けて自分のメールアドレスを入力します。

(Logging in to anonymous@cvs.sourceforge.net)
CVS password:

この後、普通はログインに成功するのですが、不幸にして次の様なメッセージが
表示されることがあります。この様なメッセージが出た場合には、メールアドレ
スを入力するのではなく、単にリターン・キーだけを押して下さい。

cvs [login aborted]: recv() from server cvs.sourceforge.net: Connection
reset by peer

それでも同じ様なエラーメッセージが表示される場合には、アクセスの集中など
によってログインできなくなっている場合がほとんどですので、しばらくしてか
らもう一度試してみて下さい。

ログインに成功したら、次の様にコマンドを入力して、ソースを取得します。

$
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/supercollider
co SuperCollider3

この後、次の様なメッセージが続きます。この作業には数分間かかりますので、
全部終わって再びプロンプトが表示されるまで待ちます。

cvs server: Updating SuperCollider3
U SuperCollider3/COPYING
U SuperCollider3/Makefile.am
U SuperCollider3/changes.rtf
...
cvs server: Updating SuperCollider3/xSC3synth.pbproj
U SuperCollider3/xSC3synth.pbproj/.cvsignore
U SuperCollider3/xSC3synth.pbproj/project.pbxproj

これが終わったら、いよいよビルドします。まず、SuperColliderのディレクト
リに移動します。

$ cd SuperCollider3/

移動が終わったら、次のコマンドを入力します。ここで、「sh」というのは
「シェル」という、コマンドラインから与えたスクリプトを実行してくれるコマ
ンドです。次の様にシェルに対して「compile-xcode.sh」というスクリプトを指
定して、それを実行します。

$ sh ./compile-xcode.sh

このスクリプトを実行すると、SuperCollider 3のビルドがしかるべく順序で
次々と実行されます。コンピュータのスペックによって所要時間は変わります
が、短くても十分程度はかかりますので、気長に待ちます。

最後に次の様に表示されたら完了です。お疲れさまでした!

=== BUILDING AGGREGATE TARGET All USING BUILD STYLE Deployment ===
** BUILD SUCCEEDED **
Done.

無事にビルドが終わったら、SuperCollider3/buildというディレクトリの中をみ
てみて下さい。そこにはできたてのSuperCollider 3があるはずです。おめでと
うございます!


<おわりに>

以上、駆け足で説明してきましたが、いかがでしたでしょうか?なんだか次から
次へと新しいコマンドが出て来て、混乱してしまったかもしれませんね。

でも、一度やってしまうと、結構簡単な作業であるということが分かっていただ
けたのではないかと思います。こうしたツールは、今後SuperCollider 3のプラ
グインなどを作っていく時にも必要になりますので、焦らず、少しずつ慣れてい
く様にすると、いずれ役に立つことがあると思います。

今回の説明は以上です。もし質問や感想などありましたら、メールをいただけれ
ばと思います。


shigeru kobayashi
e-mail: kotobuki@yapan.org
weblog: http://www.yapan.org/

------------------------------------------------------------------------

メルマガの発行確認や購読中止は、DSPマガジンWEBサイトをご覧ください。

http://dspmag.iamas.ac.jp/

------------------------------------------------------------------------
Copyright(C)2003-2004 DSP Magazine. All Rights Reserved. 転送・転載禁止
------------------------------------------------------------------------ 

       


©