(2005.11.22. 追記) Lilypond 2.6 から、Mac OS 10.3 用のバイナリが配布されるようになった。Fink は必要なくなり、アプリケーションパッケージのドラッグコピーでインストールできる。スコアの .ly ファイルをアプリケーションアイコンにドラッグ&ドロップすると、内蔵テキストエディタで開くことができ、そこでコマンド+R (Typeset File) とすると、コンパイルして生成した pdf ファイルをプレビューで開くところまでやってくれる。かなり「普通のアプリケーション」に近づいた。
しかし使いこなすのはなかなか難しいな。記号とかが「ちょっとずれている」とか、「もうちょっと段の間隔を狭くすればこのページにもう一段入るのに」とか思ったときに、どこをどういじればよいのかすぐにはわからない。一通りのコツをつかんでしまえばいろいろできるんだろうけど。
そういうわけで、以下は古い情報です。一応残しておきます。
(2004.5.9. 記)
Lilypond 公式サイトにソースが公開されているが、Mac OS X でコンパイルするには大量のパッチが必要。Fink 経由でインストールするのが事実上唯一の選択肢のようだ。2004/05/09 現在、10.2 用の最新版は 2.0.1 で、Fink の unstable ツリーにある (package lilypond)。分類が text なのは一見奇妙だが、音楽ソフトというよりは TeX の仲間と考えた方が自然だからだろう。
Mac OS 10.2 にインストールするには、Fink のダウンロードページに従って、次の手順で進める。(バージョン番号はすべて 2004/05/09 現在のもの)
fink scanpackages; fink index
を実行。/sw/etc/fink.conf
ファイルの Trees:
の行に unstable/main
と unstable/crypto
を追加する。その後、fink selfupdate; fink index
を実行。(参考:Fink FAQ, Q5.8)fink info lilypond
で lilypond の情報を確認。fink install lilypond
でインストール。非常にたくさんのパッケージが必要。いくつかのパッケージについて、どれをインストールするか選択を求められる。僕はとりあえず全部デフォルトの選択肢を選んだ。
僕の場合、最初 unstable tree を有効にせずにやってしまったところ、stable tree から 1.6.10 をインストールし始めたのだが、最後にこんなエラーで止まってしまった。
ld: Undefined symbols: _dlclose _dlerror _dlopen _dlsym
原因がよくわからなかったのだが、もしかすると dlcompat
パッケージが /usr/lib
と /sw/lib
にダブってインストールされていたせいかも知れない。/usr/lib/libdl.*
を _libdl.*
とリネームして対処。その後 unstable tree を有効にしてインストールしたら問題なく成功したので、どちらが問題だったのか結局不明になってしまった。
サンプルデータ (elgar201.ly, 2.0.1 用) を適当なディレクトリに置いて、ターミナルから lilypond elgar201.ly
。日本語でメッセージが出ると思うので、ターミナルのウィンドウ設定でエンコーディングを日本語EUCにしておく。成功すると elgar201.pdf
ができるので、プレビューや Acrobat Readerなどで見るなりプリントするなりご自由に。
Fink の lilypond パッケージングは 10.3 が優先されているようで、10.2-gcc3.3 のツリーはバージョンが少し古かったりする。Lilypond のサイトでソースが公開されているのに1つ前のバージョンを使わないといけないのはくやしいので、なんとかソースからビルドしたい。以下、その手順。
fink rebuild lilypond
)。
$HOME/Development/lilypond-2.2.1-dir
) を作り、そこで tarball を展開して lilypond-2.2.1
ディレクトリを得る。
fink install
で以下のパッケージの最新版をインストール:potrace, autotrace, t1utils, texinfo
mftrace
の最新版をインストール。これは Fink に入ってないみたい。オリジナルはここかな?→mftrace - Scalable Fonts for MetaFont
cp -r lilypond-2.2.1 lilypond-2.2.1-orig
。続いて、lilypond-2.2.1.patch
をダウンロードして同じディレクトリにコピーし、patch -p0 < lilyponde.2.2.1.patch
。
bash
にして、cd lilypond-2.2.1
。これ以下のコマンドは、Fink パッケージ中の lilypond.info
を参考にした。
CPPFLAGS=-I/sw/include CCFLAGS=-I/sw/include LDFLAGS=-L/sw/lib GUILE=/sw/bin/guile-1.6 GUILE_CONFIG=guile-1.6-config ./configure --prefix=/sw --infodir='$(prefix)/share/info' --mandir='$(prefix)/share/man'
(全部1行で!)
PREFIX=/sw ./lexer-gcc-3.1.sh
ulimit -S -s 8192; gnumake -C mf get-pfa; gnumake; gnumake -C mf fontdir
install_script.sh
をダウンロードして、sudo sh install_script.sh
。
これは最短距離(?)の手順だが、実際に僕がやったときはもっと回り道をした。tarball を展開したあと、Fink パッケージ中の /sw/fink/10.2-gcc3.3/unstable/main/finkinfo/text/lilypond.patch
から 2.2.1 用のパッチを仮作成("2.0.1" を "2.2.1" に全置換しただけ)。patch -p0 <lilypond-2.2.1.patch
で、パッチ当てできなかったファイルのみ手作業でパッチを当てた。上で紹介したパッチはそうやって作ったソースとオリジナルから改めて作り直したもの。本家のバージョンが上がったら、この作業はまた最初からやり直しになる。
あとは、基本的には configure/make でエラーが出なくなるまで直す、という作業。lilypond.info
中にコンパイル・インストール用のスクリプトが書かれていることに(だいぶ後になって)気がついたので、あとは足りないパッケージをひたすらインストールすればよかった。それにしても、必要なパッケージの数が尋常じゃないね。TeX を使っているので仕方がないのだけど。
注意:バージョンを上げると、以前のバージョンで作成したスコアはそのままでは処理できなくなる。convert-ly
でインストールした lilypond バージョンに合わせてスコアファイルをコンバートする。上記の elgar201.ly
は 2.0.1 用なので、2.2.1 に上げたらコンバートが必要:convert-ly elgar201.ly >elgar221.ly