- 2008/06/18 12:47 AM
- TechLog!
Leopardに環境を移すにあたり、ここはひとつMakefileしてインストールする方法を使ってメンテナンスがしやすいPlagger環境を作りたい!と思い、色々なサイトの情報を集めつつ試していたのですが、どうも環境が違うのか作業途中で躓きまくって再インストールを繰り返すうちに情熱が冷めてしまい、アップグレードディスクが手元にあったのに半年以上放置という状態が続いていました。(このブログも随分放置してますが)
このまま放置はそろそろ「勿体無い」気がしたので、もう一度奮起してリベンジ。その結果、一応の解決を見たのでその手順の一部始終を晒してみます。もうちょっとスマートに出来る方法があれば是非とも教えてください。手順の組み立てに見直しと確認と・・えらく手間取りました。
このエントリーでの目標は
「Leopardをクリーンインストール状態からPlaggerが動くようになるまで育て上げる!!」
(MakefileしたPlaggerでニコPlaTunes Readyな環境をガチで構築するんだゼ!)
ということでいきたいと思います。
今回はクリーンインストール+アップデートを施しただけのほぼ素の状態からの環境構築なので、裸一貫から環境構築したい!少々やっちゃってもかまわないゼ?というチャレンジングスピリッツを持った御仁には役立ててもらえるネタになっているんじゃなかろうかと思います。
■実証に使用した環境のスペック
Mac mini(MB139J/A)
2GHz Intel Core 2 Duo/1GB PC2-5300/120GB
Mac OS X 10.5.3 (クリーンインストール後に既存アップデータ全て適用済み)
<この記事の利用における注意事項>
これはクリーンインストール状態からの環境構築の記録です。既に使いこなしている環境でこの記事の内容を実行してもうまくいかない可能性が多々あります。
ターミナルを使ってコマンドを叩く操作がほとんどです。基本的にこれらの操作方法をある程度理解+拒否反応が無い人向けの内容となっています。よく分からない場合は事前にじっくり調べてから取り掛かることをおすすめします。
手順通りやればうまくいくと思いますが、このエントリーの内容を実行したことによって如何なるトラブルが発生しても当方では責任はとれません。セルフリカバーの精神でよろしくどうぞ。
■Leopard10.5.0をクリーンインストールする
Leopard発売直後くらいに買ったMac miniなので、バンドルされていたLeopardアップグレードディスクのバージョンは10.5.0でした。アップデータで最新版状態にして作業を始めるので、どのバージョンでも基本的にOKだと思います。
1.Leopardをインストール(完全フォーマットしてインストール)
TigerのインストールディスクのiLife’08などのソフト資産を活かしたかったところですが、どうしても妙なエラーが出るのでアップグレードインストールは諦めました。(苦渋の決断)
2.ソフトウェアアップデートのアップデータを全部適用する
インターネットに繋がったらどんどん落ちてくると思うので残さず全部インストール。
3.Xcode Toolsをインストール
ADCにサインアップして最新版を・・という手もありますが、今回はLeopardインストールディスクに入っているものを使用しました。
4.共有設定の確認(Web)
Web共有は後々Plaggerでニコニコするのに必要なので設定をしておきましょう。このときにスリープ解除もすかさず聞いてくるので”なし”に設定。あとはお好みでどうぞ。
■有事の備え(おすすめ)
ここまでで、そこそこ時間がかかっていると思うのでまさかの時に備えてTime MachineとかCarbon Copy ClonerとかでHDDイメージをごっそりバックアップしておくと後戻りが比較的楽です。(・・かなりお世話になりました)
Carbon Copy Cloner(ドネーションウェア) http://www.bombich.com/software/ccc.html
■Mac Portsを手に入れる
1.Leopard (Universal)版をダウンロードしてインストール
とても便利でステキなツールMac Portsを手に入れましょう。ソースからビルドする方法もあるようですが、今回はインストールパッケージを使用しました。下記サイトを拾い読みすればLeopard (Universal)というリンクが見つかります。
Mac Ports http://www.macPorts.org/install.php
2.Mac PortsへのPATHを通す(これで$ port ***で動くようになります)
$ echo 'export PATH=/opt/local/bin:/opt/local/sbin/:$PATH' >> ~/.bashrc $ echo 'export MANPATH=/opt/local/man:$MANPATH' >> ~/.bashrc $ echo 'source ~/.bashrc' >> ~/.bash_profile
■Porticusをインストール(Mac PortsをGUIで操作可能に)
ターミナルからだとVariantsの設定がメンドクサーだし、Portsの検索などなどなにかと便利なので、GUIでMac Portsの操作が可能なスグレモノツールであるPorticusを使いました。requires Mac OS X 10.4 / Mac Portsとありますが、Leopardでも動作しました。(厳密にチェックしたわけではないけど今回使った分には特に問題はおきていませんヨ)
Porticus(ドネーションウェア) http://porticus.alittledrop.com/
1.Porticusを起動、データベースの更新
起動すると上記のようなメッセージが出てくるのでそれらの指示に従えば準備完了です。
■Porticusを使ってPortsを粛々とインストール
後にPlaggerを導入する前提でのPortsをチョイスしています。他にも必要なものがあるかもしれませんが、とりあえず動くようになってから試したほうがよいかと。一応、インストール時に設定したVariantsも参考に載せておきます。スクショは手間だったのでコマンドで列記しておきます。
1.CPANで必要になるPorts(Leopardの初期状態には入っていないので)
$ sudo port install lynx $ sudo port install wget $ sudo port install ncftp $ sudo port install gnupg
2.Plaggerで必要になると思われるPorts(不勉強なもので別サイト様の受け売りです)
$ sudo port install sqlite3 $ sudo port install libxml $ sudo port install libxml2
ここまではVariantsはつけませんでした。コマンドの通り素のままでインストールしています。
3.メディア変換関連のPorts(Finkだと失敗したのにMac Portsはすんなり成功する不思議)
$ sudo port install ImageMagick +jbig +jpeg2 +mpeg +perl +q32 +wmf $ sudo port install FFmpeg +a52 +avfilter +darwin_i386 +extvorbis +faac +faad +gpl +lame +postproc +theora +x264 +xvid
メディア変換関連のPortsはほぼ可能な限りVariantsを付けました。Variants=対応メディアの増加みたいなところがあるので。インストール完了までかなり時間がかかるのでしばらく放置です。Variantsを付けるときに注意しないといけないのは、Variants同士で競合してしまう場合、インストール途中で失敗してしまう点です。このあたりはログウィンドウに赤いエラーメッセージを表示して教えてくれるので原因究明はある程度できます。
あと、インストール途中で失敗してしまった場合はそのPortsをリストから選択して、メニューのPorts>Clean…を選択して初期化操作をしてからインストール作業をしないと、以前のエラーを引きずったままインストールをしようとするので大抵エラーの無限ループに陥ります。ここはきっと嵌るポイントです。(←ずっぽし嵌った)
あ、それから、universalってVariantsは鬼門っぽいので選択しない方がいいかも。
■有事の備え(強くおすすめ)
ここまでで、そこそこ時間がかk(ry
■CPANの実行と初期設定
ようやくCPANを起動する準備ができました。ここからは何度も失敗して良くわからなくなって再インストールしまくりました。でも、この記事通り進めば変なトラブルは起きないハズ。慎重に進めましょう。
1.CPANの実行
実行コマンドはいろいろ有るようですがシンプルに。次に起動するときもこのコマンドで。
$ sudo cpan
2.CPAN初期設定で設定を変えてみた項目(これ以外はReturnキーを押すだけ)
Cache size for build directory (in MB)? [10]100 ← 念のため増やしました UNINST=1 to always uninstall potentially conflicting files Your choice: []UNINST=1 ← 保険みたいなものです Select your continent (or several nearby continents) []2 ← (2)Asiaを選択 Select your country (or several nearby countries) []5 ← (5)Japanを選択 Select as many URLs as you like, put them on one line, separated by blanks []1 4 ← 近所を2つくらい選んでおけばOKかと
※CPANの設定をやり直したい場合は以下のコマンドを入力
$ sudo cpan cpan> o conf init
■CPANでモジュールのインストール(Plagger関連)
ここから先が良く分からないトラブルが起こりまくる未開ゾーン。とりあえず以下の手順で進めると特に変なエラーも出ずに抜けることが出来てます。・・自分の環境ではですが。
※CPAN初期インストール例でよく紹介されるBundle::CPANとBundle::LWPをインストールすると、この先のモジュールのインストール時にエラーが出て参ったのでとりあえず今回は使わない方向で。あと、installコマンド実行中に出てくるモジュールインストールなどなどに関する質問はインストーラスクリプト製作者に敬意を表しつつ、ひたすらReturnキー押しで基本的にOKかと。
1.CPANの機能追加インストール
cpan> install Module::Install
2.色々機能が追加されたのでreloadしておきます
cpan> reload cpan
3.Plaggerインストール時に最低限必要となるモジュールのインストール
cpan> install Cache::Cache cpan> install Class::Accessor::Fast cpan> install Date::Parse cpan> install DateTime cpan> install DateTime::Format::Mail cpan> install DateTime::Format::Strptime ← NG(インストール失敗) cpan> install DateTime::Format::W3CDTF cpan> install DateTime::Locale ← インストール済みと出た cpan> install DateTime::TimeZone ← インストール済みと出た cpan> install File::Find::Rule cpan> install File::HomeDir ← NG(インストール失敗) cpan> install HTML::ResolveLink cpan> install MIME::Types cpan> install Module::Pluggable::Fast cpan> install Net::DNS cpan> install Template cpan> install Template::Provider::Encoding cpan> install Term::Encoding cpan> install Text::Tags cpan> install URI::Fetch cpan> install XML::Atom cpan> install XML::Feed cpan> install XML::LibXML ← インストール済みと出た cpan> install XML::RSS::LibXML
4.念のためreloadしてCPANでの作業を終了(reloadは必要ないかも)
cpan> reload cpan cpan> quit
インストール成功時のメッセージはこんな感じ
インストール失敗時のメッセージはこんな感じ
インストール済みのメッセージはこんな感じ
■CPANでのインストールが失敗するモジュールの個別インストール
上記のCPANからのインストールでなぜか失敗した2つのモジュールはを調べた結果、DateTime::Format::Strptimeはそのまま個別インストールすれば成功したのと、File::HomeDirをインストールする前にMac::Carbonをインストールしておかないと駄目らしいことが判明。とりあえずDateTime::Format::StrptimeとMac::Carbonを個別にダウンロードしてインストールしていきます。
1.CPANサイトからアーカイブファイルをダウンロードする
それぞれのリンク先はこの記事の作成段階で公開されていたバージョンです。リンクが切れている場合はThe CPAN Search Site(http://search.cpan.org/)で探してみてください。
DateTime::Format::Strptime http://search.cpan.org/author/RICKM/DateTime-Format-Strptime-1.0702/lib/DateTime/Format/Strptime.pm
Mac::Carbon http://search.cpan.org/author/CNANDOR/Mac-Carbon-0.77/Carbon.pm
2.ダウンロードしたアーカイブファイルをダウンロードフォルダに解凍する
まぁどこに解凍してもいいんですが、ご自身で把握できるところでどうぞ。以降はダウンロードフォルダに解凍したとして作業を進めていきます。コマンド実行中にいくつか質問してくる場合があると思いますが、ここもインストーラスクリプト製作者に感謝と畏敬の念を抱きつつReturnキー押しで進めました。
3.解凍したモジュールをインストール
早速解凍したモジュールをターミナルを使ってインストールしていきます。
$ cd ~/Downloads/DateTime-Format-Strptime-1.0702 $ perl Makefile.PL $ sudo make $ sudo make install $ cd ../Mac-Carbon-0.77 $ perl Makefile.PL $ sudo make $ sudo make install
インストールに成功したときのメッセージ例はこんな感じ
やってることはCPANのinstallと変わらない感じなのになぜCPANで失敗してしまうのか分かりませんが、ここは目を瞑ってそそくさと次に進みます。ダウンロードフォルダに残っている先ほどのアーカイブファイルや解凍したフォルダはゴミ箱にポイしてもOKです。
■再度CPANでモジュールをインストール
先ほどCPANでインストールに失敗したFile::HomeDirとPlagger実行時に必要っぽいモジュールをついでにインストールしてしまいましょう。
1.cpanを起動して先ほど失敗したFile::HomeDirをインストール
$ sudo cpan cpan> install File::HomeDir
今度は恐ろしくあっさりと成功したと思います。
2.この機会にPlagger実行時に必要そうなモジュールをどんどこインストール
cpan> install Test::Base cpan> install YAML cpan> install Mac::AppleScript cpan> install Config::Pit cpan> install Crypt::SSLeay ←LWPでSSL通信するのに必要(即ちニコニコするのに必要) cpan> install File::Spec cpan> install Encode cpan> install FFmpeg::Command cpan> install FLV::Info
3.念のためreloadしてCPANでの作業を終了(reloadは必要ないかも)
cpan> reload cpan cpan> quit
ここまででリーサルウェポンであるforce install?を使わずにPlaggerのインストールに必要なモジュールをインストールできました。今のところムリヤリ感のない精神的にもやさしい感じの作業状況になってると思いますがどうでしょうか。
■Plaggerインストール
いよいよここまでやってきました。今回はLeopardに標準でインストールされているSubversionを使ってリポジトリからのチェックアウトを試してみました。ユーザのルートにreposというフォルダを作り、保存してみます。
1.Plaggerをチェックアウト
$ svn co http://svn.bulknews.net/repos/plagger/trunk/plagger ~/repos/plagger
チェックアウトに成功すればこんな感じのメッセージが表示されると思います。
2.Plaggerのインストール
コマンドを実行すると、ものすごい勢いでモジュールインストールなどなどの質問が出てきますが、ここはインストーラスクリプト製作者にリスペクトを表しつつ、ひたすらReturnキー押しまくりました。(適当でスマンです)
$ cd ~/repos/plagger $ perl Makefile.PL $ sudo make $ sudo make install
ひとしきりコマンド操作が終わった状態はこんな感じ。
3.動作チェックしてみましょう
うまくインストールできたかバージョンチェックのコマンドを実行してみます。
$ plagger -v
以下のようなメッセージが出てきたら、ひとまずインストール成功です。(`∀´)b
■お疲れ様でした
ここまでで一応LeopardをPlaggerが動くところまで育て上げることができました。・・うまくいきましたか?
当方でも再度この手順を元に本番環境にインスト?ルしてみましたが、特に問題なく動いたので恐らく大丈夫だろうとは思うのですが。この手順を試された方やもっとスマートにできるぜ?という方、情報をお待ちしてます。
この記事の作成にあたり、参考にさせていただいたエントリーの一覧です。ありがとうございます。
CPAN を使い Perl モジュールをインストールする http://www.omakase.org/perl_module.htm
もう CPANPLUS は使わなくてもいいのかも http://d.hatena.ne.jp/dayflower/20070814/1187084177
LeopardにPlaggerをインストールしてMixiをGmailで読む方法 http://d.hatena.ne.jp/seagirl/20071217/1197881000
OS X Leopard My Setting (Plagger) http://log.metatype.jp/?p=33
・・・しかしまたえらく長いエントリーになってしまった。(‘A`)
- 新しい: サイト全般を模様替えしました
- 古い: Intel MacはUSB接続のHDDでも