ラベル mac の投稿を表示しています。 すべての投稿を表示
ラベル mac の投稿を表示しています。 すべての投稿を表示

2008年5月30日金曜日

Trac mod_pythonで実行したら LookupError: unknown encoding: X-MAC-JAPANESE

いやぁ・・・Macシロートが下手にMacをサーバー利用してみようとしたのがまずかったのかMac固有の問題に色々はまっている。。

tracdでの起動確認はOK。じゃ今度はmod_pythonでApacheからやってみよう、と。

httpd.confの設定

apacheを立ち上げなおすと・・・。おおトップページはOK。
いざプロジェクトをクリックすると・・・/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/trac/util/datefmt.pyで、LookupError: unknown encoding: X-MAC-JAPANESE と言うエラーが。MacでPythonを扱うときにみんなハマるみちらしい。
エラーの出ているdatefm.pyを修正してencodeを無理やりutf8にしたらとりあえずOK。X-MAC-JAPANESEがどんなエンコーディングなのかは・・・調べてない。

参考

MySQL5 パラメータファイル(my.cnf)のおき場所

MacPortsで +Serverをつけてインストールをしたが、パラメータファイルを読み込ませることができなくて悩んだ。

現場で使える MySQLを参照しながら設定をしていたのだけれど、この本にはmy.cnfのおき場所について書いてなかった。これはぜひ次の版では書いておいて欲しいな。

この書籍ではmysqld_safeコマンドの--defaults-fileオプションを指定する前提で書いてあるのだが、MacPortsでインストールして、自動起動の設定をすると自分でmysqld_safeを叩かないので--defaults-fileオプションを書きようが無く悩んだ。。。ネットで検索してもこんなことで誰も悩んでいない。自分だけなのかなぁ。

plistに何か書くのかな、と思い /Library/LaunchDaemons/org.macports.mysql5.plist をみても良く分からん、と悩んで色々探していると、答えは<MySQL 5.1 リファレンスマニュアル :: 3.3.2 オプションファイルの使用>にありました。

一番簡単なのは /etc/my.cnf に配置しろ! です。

リファレンスマニュアルによるとオプションを指定しない場合は
  1. /etc/my.cnf
  2. $DATADIR/my.cnf
    (データファイルが置いてある場所 うちだと/opt/local/var/db/mysql5)
  3. $BASEDIR/my.cnf
    (起動時の--basedirパラメータで指定される うちだと/opt/local)
  4. ~/.my.cnf
を見に行くとのこと。良くは読まなかったんだけど、mysql.serverのスクリプトの中身もそんな感じで書かれていた。
launchdが--datadir,--basedirオプションに何を指定しているかはpsコマンドで調べた。

またMac固有の問題にやられたなーと言う感じ。

で、本来やりたかったのは「デフォルトの文字セットがlatain1なのでutf8にかえたい」ということで以下のように設定しましたよっと。


どうやらskip-character-set-client-handshakeを指定しておけば、クライアントの文字セットは「つべこべ言わずにサーバのいうとおりにしろ!」と言うことができる様子です。

参考

2008年5月27日火曜日

MacportsのPython25インストールでエラーが出る

うーん、コンパイルに失敗しているようだ。
MAC:/usr/bin $ sudo port install trac
---> Fetching perl5.8
---> Attempting to fetch perl-5.8.8.tar.bz2 from http://www.cpan.org/src/5.0/
---> Verifying checksum(s) for perl5.8
---> Extracting perl5.8
---> Applying patches to perl5.8
---> Configuring perl5.8
---> Building perl5.8 with target all
---> Staging perl5.8 into destroot
---> Installing perl5.8 5.8.8_2+darwin_8
---> Activating perl5.8 5.8.8_2+darwin_8
---> Cleaning perl5.8
---> Fetching python25
---> Attempting to fetch Python-2.5.2.tar.bz2 from http://www.python.org//ftp/python/2.5.2/
---> Verifying checksum(s) for python25
---> Extracting python25
---> Applying patches to python25
---> Configuring python25
---> Building python25 with target all
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsy2
Command output: /usr/bin/gcc-4.0 -c -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -Oc
/usr/bin/gcc-4.0 -c -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrictc
/usr/bin/gcc-4.0 -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-pro
/usr/bin/gcc-4.0 -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-pro
/usr/bin/gcc-4.0 -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-pro
/usr/bin/gcc-4.0 -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-pro
/usr/bin/gcc-4.0 -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-pro
/usr/bin/gcc-4.0 -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-pro
/usr/bin/gcc-4.0 -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-pro
/usr/bin/gcc-4.0 -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-pro
/usr/bin/gcc-4.0 -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-pro
/usr/bin/gcc-4.0 -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-pro
/usr/bin/gcc-4.0 -c -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -DNDEBUG -g -fwrapv -O3 -Wall -Wstrictc
rm -f libpython2.5.a
ar cr libpython2.5.a Modules/getbuildinfo.o
ar cr libpython2.5.a Modules/_typesmodule.o
ar cr libpython2.5.a Parser/acceler.o Parser/grammar1.o Parser/listnode.o Parser/node.o Parser/parser.o Parser/parsetok.o Parsero
ar cr libpython2.5.a Objects/abstract.o Objects/boolobject.o Objects/bufferobject.o Objects/cellobject.o Objects/classobject.o Oo
ar cr libpython2.5.a Python/Python-ast.o Python/asdl.o Python/ast.o Python/bltinmodule.o Python/ceval.o Python/compile.o Python/o
ar cr libpython2.5.a Modules/config.o Modules/getpath.o Modules/main.o Modules/gcmodule.o
ar cr libpython2.5.a Modules/threadmodule.o Modules/signalmodule.o Modules/posixmodule.o Modules/errnomodule.o Modules/pwdmoo
ranlib libpython2.5.a
/usr/bin/libtool -o libpython2.5.dylib -dynamic \
-all_load libpython2.5.a -single_module \
-install_name /opt/local/lib/libpython2.5.dylib \
-compatibility_version 2.5 \
-current_version 2.5 -lSystem -lSystemStubs -L/opt/local/lib
ld64 failed: in libpython2.5.a(__.SYMDEF), not a valid ppc64 mach-o file
/usr/bin/libtool: internal link edit command failed
make: *** [libpython2.5.dylib] Error 1

Error: The following dependencies failed to build: clearsilver python25 py25-hashlib py25-sqlite3 subversion-python25bindings pyb
Error: Status 1 encountered during processing.


このログはtracをインストールする過程のものなんだけど、 port install python25でやってもできません・・・。

特にPortでのインストールにこだわっているわけでもないので素直にPython標準リリース(蛇の絵がかわいい)からpython-2.5.2-macosx.dmgをダウンロードしてpkgからインストール。

ここでも気になるのがTigerに元から入っているPython2.3。一体どうやってアンインストールしたものか・・・。XCodeのDVD入れたらきれいに抜けるのかな。

結局のところ

もともと入ってた2.3
/System/Library/Frameworks/Python.framework


今回入れた2.5
/Library/Frameworks/Python.framework

という構成で、/usr/bin の pythonコマンドは2.3のシンボリックリンクのまま。

一応、2.5のインストーラが /Library/Frameworks/Python.framework/Versions/Current/bin にPATHをきってくれているので問題はないのだが・・・。(.bashrcには追記はされていなかったんだけど、インストーラはどのファイルに書き込んでくれたんだろう・・・)

2008年5月25日日曜日

macportsを導入するの巻

おうちde開発用にまずmacportsを導入することにします。
macportsはUbuntuのapt見たいなやつで、コマンド一発でダウンロードからインストールまでしてくれる心強いツールです。

インストール方法は<MacPortsでステキなUNIXツールをインストール - はこべにっき#>にお任せするとして、ちょっとつまったことをメモしておきます。

.bashrc と .bashprofile
macportsはportコマンドが/opt/local/bin に入る。そのためpathを通すために~/.bashrcに書くとのことだけれど、.bashrcが無かった。なので新規作成して書いてみたのだがpathが通ってない。うーん。

macportsを実行するときには当然ターミナル(terminal.app)を使うんだが、.bashrcはターミナル起動時に読み込まれないらしい。<X11 for Mac OS X - Hiroshi Fujii web site>にどんなときに.bashrcや.bash_profileが読み込まれるかは詳しく書いてあったのだが、結局、のところこのようにしてみた。

.bash_profile

.bashrc


これで、とりあえず何か設定するときは迷うことなく.bashrcに書けばいいわけだ。

参考
MacPortsでステキなUNIXツールをインストール - はこべにっき#
X11 for Mac OS X - Hiroshi Fujii web site
MacWiki - MacPorts
Aya's curiosity Macターミナルで日本語入力 -覚え書き-
Mac miniにSubversionをインストール

おうち開発環境を整える

今日から始まるおうちde開発プロジェクト。
なんてことはない諸事情あってしばらく無職なので、iTunes専用マシンになっているmacminiを開発サーバとして有効活用しようってだけなんだけど・・・。

何やろうとしてたかすぐに忘れるのでここに書いてしまいます。
  • Terminalの設定
    • 日本語表示、入力
  • subversionを使えるように
    • mod_davを入れてsubversionを使えるようにしよう
    • windowsマシンのeclipseからリモートでアクセスできるようにしよう
  • 当然tracも導入
    • Pythonのバージョンも上げなきゃな
    • eclipseのMylynとの連携もできたらやりたい
  • Jrubyを動かそう
    • JDKを6にバージョンアップしよう
    • Railsでアプリが動くように
    • Mongrelも動くのかな
    • RailsアプリをWARにしてアプリケーションサーバにデプロイしてみたい
      • Tomcatもいれよう
      • GlassFishもいれよう

  • MySQL5にバージョンアップしよう
  • ApacheをApache2にバージョンアップしよう

2008年4月6日日曜日

macmini ついにメモリ増設

2年ほど前にリビングPCとして購入したmacminiですが、ケチって512MBにしていたのですが、最近iMovieで動画編集なんぞをやることが多くなったので512MBじゃ足りなくなってきました。
と言うわけでメモリ増設です。

色々なサイト(特にこのサイト)をみて作業を進めたのですが、自分なりにまとめてみます。
事前に用意するのは以下のものです。
  • 増設用メモリ(自分は安全をみてBUFFALOの1Gx2にしました)
  • ヘラ(我らがダイソーで買ってきました)
  • 精密ドライバーのプラス(これもダイソーで売ってるでしょう)
ヘラ選びは意外と重要です。ねじ込む隙間がかなり狭いので分厚いヘラだと入っていきません。
強度を重視した金属ヘラと、macminiに傷をつけないやさしさを重視したプラスチックヘラの2種類を用意したのですが、結果として使ったのはプラスチックヘラでした。(金属ヘラはmacminiのプラスチック部分を削ってしまう攻撃力だったので・・・)


最初はどう差し込んだものかと悩んだのですが、プラスチックヘラの柔軟性を利用して押し込んでいくと意外とすんなり入りました。「バキッと嫌な音がする」とか「全体重をかけて」とかの事前情報を聞いていたのですが、自分の場合は意外とあっさりといけました。一箇所入ってしまえばあとはテコの原理でちょっと押し出しちょっと押し出しの繰り返しです。

無事にケースが取れた図


さて、ここからどうやってメモリに到達するのか・・・と言うことで外すべきものです。
事前に色々チェックをしていたおかげで以下の手順が最短かと思います。
  1. AirMacのアンテナを外す(手で引っ張ればOK)
  2. ファンコントローラのコネクタを外す
  3. マウンタを固定しているビスを4本外す(右上の1本はAirMacアンテナが邪魔になるので事前に要取り外し)
まずはAirMacアンテナを外すの図

強引に手で引っ張ればOKです。

ファンコントローラのコネクタを外すの図

なぜこれがファンコントローラとわかったのかというと、増設後に接続を忘れて組み立ててしまって電源をいれたらファンが回りっぱなしでものすごくうるさいマシンに・・・。こいつの存在は忘れないようにしましょう。

ほぼ外れたの図


このコネクタは外さなくても何とかなる

外しにくかったので、つけたままひっくり返しました。メモリを増設するだけならこれでなんとかなります。

ということでメモリに到達するのであとはフツーに交換するだけです。
ピンで固定されているので爪で押しながら外します。(写真を撮り忘れたのでこちらを参考にしてください)

というわけで・・・一気に2GBに!


複数アプリケーションを平行して使ったりしてもサクサク動くし、メモリスワップ率が減ったのでハードディスクがガリガリが少なくなって快適になりました!

2008年1月13日日曜日

iPODのフォーマットをHFS+ にした

うちのiPodは四世代のWindowsフォーマットのやつなんだがここ一年ほどMacにしか接続したいないのでMac形式にフォーマットし直してみました。
最初にMac付属のディスクユーティリティでフォーマットしたら大失敗… iTunesを起動するとiPod認識して同期されるのだけれど、その後にiPodがマウントとアンマウントを繰り返す変な挙動を…
iTunesで初期状態にするボタンでやらないとダメみたい、ということを学びました。
まぁフォーマットし直しても別にいいことないんだけどね。



追記:ちょっといいことありました
  1. iTunesを終了するときちんとアンマウントされるようになりました。
    FAT32フォーマットのときはiTunesの終了はおろか、macの電源を切っても「接続を解除しないでください・・・」の表示が出っぱなしで気持ち悪かった。
  2. iScrobberがiPodを同期したときに自動的に動作するようになりました。
    FAT32フォーマットのときはメニューバーから「update ipod...」を自前で選択する必要がありました。
やっぱマックで使うならHFS+でフォーマットをしておいたほうがいいようです。