Archive for the 'OS X' Category

fortune

木曜日, 12月 13th, 2007

fink に fortune ないなあと思ったら fortune-mod って名前だったのね。

【コラム】OS X ハッキング! (53) fortuneで爽やかな1日を始めよう | パソコン | マイコミジャーナル

fink install fortune-mod

gcalcli を OS X 10.3.9 にインストール

木曜日, 12月 13th, 2007

コマンドラインでGoogleカレンダー操作「gcalcli」で紹介(でもこの記事だとちゃんとインストール出来ていない…)されている gcalcli を OS X 10.3.9 な iBook に入れてみた。

fink の Python 2.4 (/sw/bin/python) では、ちゃんとユーザ名とパスワードを入れても

Error: Failed to authenticate with Google Calendar!

とエラーがでて動かず
Python標準リリース
から Python 2.5 をインストール、/usr/local/bin/python に入ります。
(後で調べたらOS 標準の Python 2.3 /usr/bin/python では動く)

ついでに mi に Python モードを、mi用pythonモードをMacOSXで使う方法を参考にして入れる。

gcalcli の shebang のパス
#!/usr/bin/python を
#!/usr/local/bin/python に
書き換え

以下のモジュールが必要

解凍したディレクトリで
python setup.py install
するだけ。

文字コード周りで

LookupError: unknown encoding: X-MAC-JAPANESE

とエラーが出るので

gcalcli の65行目付近

# for unicode support
# sys.stdout = codecs.getwriter(locale.getpreferredencoding())(sys.stdout)
# sys.stdin = codecs.getreader(locale.getpreferredencoding())(sys.stdin)

sys.stdout = codecs.getwriter('utf-8')(sys.stdout)
sys.stdin = codecs.getreader('utf-8')(sys.stdin)

に書き換える。

動いたー。
でも文字幅が英数半角しか想定していなくて、日本語が混じって
いるとカレンダー表示のレイアウトがずれる…

Python はインデントがプログラミングの一部なのが少し面倒な印象。

perlsh を OSX にインストール

水曜日, 11月 14th, 2007

perlsh を OSX 10.3 + PPC 環境にインストール - あーありがち 2007-08-11
のまんま

1. cpan から install Term::ReadLine::Gnu
2. OSX 10.3 + PPC 環境では readline.h が見つからずに compile 失敗
3. 手元に Fink で入れた Readline があったので、それを使って compile
4. perlsh スクリプトを PATH の通ったところへ install

3 では

~/.cpan/build/Term-ReadLine-Gnu-1.16

に入って

perl Makefile.PL –prefix=/sw
make
sudo make install

Fink じゃない人は /opt とか適当に書き換えるよろし。

4 では

cd eg
sudo install -m 0755 perlsh /usr/local/bin

あと。perlsh は

#! /usr/local/bin/perl

になっているので、これを自分の使っている Perl インタープリタのパスに書き換えてやる必要あり。

ledit と rlwrap

水曜日, 11月 14th, 2007

gosh のインライン編集に rlwrap が便利って書いたけど
leditってのもあるそう。

#include : Where is ledit?

これは Mac だと fink に入っているのでらくちん。

sudo fink install ledit

一緒に OCaml もついてきてしまうが。

ledit gosh -i

OS X 10.3.9 Gauche インストール

水曜日, 11月 14th, 2007

昨日の続き

同じ目に遭っている人発見。グーグル様ありがとう。
Gauche at Lingr > Archives > January 20, 2007
Kahuaのセミナー会場でGaucheのインストールがうまくいってないことを
発見するなんて、かわいそう。(今さらだけど、Lingrすごいね)

hori
# gauche0.8.9のインストールが不完全でした。早々に脱落です(涙)。残り時間は気楽にプロジェクターの画面見てます。

shiro
# えー今落として入れるんじゃだめっすか

hori
# MacOSX10.3.9には対応してるでしょうか?

shiro
# 手元で確認したのは10.4.8です
# 0.8.8までは10.3あたりで確認していたと思うので、引っかかることはなさそうな気もしますが…
# –enable-threads=pthreadsは必須です

hori
# gauche0.8.9のmake checkをやり直してみました。
# 26×26masa.edw
# といわれるのですが……
# 4:21pm (January 20) 26×26hori
#
gauche/net.h:92: error: redefinition of `struct sockaddr_storage’
make[2]: *** [net.o] Error 1

gauche/net.h:92: error: redefinition of `struct sockaddr_storage’
make[2]: *** [net.o] Error 1

hori
#
In file included from net.c:36:
gauche/net.h:86:1: warning: “_SS_ALIGNSIZE” redefined
In file included from gauche/net.h:44,
from net.c:36:
/usr/include/sys/socket.h:232:1: warning: this is the location of the previous definition
In file included from net.c:36:
gauche/net.h:92: error: redefinition of `struct sockaddr_storage’
make[2]: *** [net.o] Error 1
など。

In file included from net.c:36:
gauche/net.h:86:1: warning: “_SS_ALIGNSIZE” redefined
In file included from gauche/net.h:44,
from net.c:36:
/usr/include/sys/socket.h:232:1: warning: this is the location of the previous definition
In file included from net.c:36:
gauche/net.h:92: error: redefinition of `struct sockaddr_storage’
make[2]: *** [net.o] Error 1
など。

shiro
# おろ。sockaddr_storageの検出に失敗してるっぽいです

hori
# インストールは出来て
#
hori:~/Gauche-0.8.9 tahr$ gosh -V
Gauche scheme interpreter, version 0.8.9 [utf-8,pthreads]

hori:~/Gauche-0.8.9 tahr$ gosh -V
Gauche scheme interpreter, version 0.8.9 [utf-8,pthreads]

shiro
# configure後に、src/gauche/config.hの
# /* #undef HAVE_STRUCT_SOCKADDR_STORAGE */
# これを
# #define HAVE_STRUCT_SOCKADDR_STORAGE 1
# に変えて、make clean ; make
# してみてください

hori
# 再make中です。compile.cが長い…

これでうまくいきました。

configure後に、src/gauche/config.hの
/* #undef HAVE_STRUCT_SOCKADDR_STORAGE */
これを
#define HAVE_STRUCT_SOCKADDR_STORAGE 1
に変えて、make clean ; make
してみてください

無事 Gauche がインストールされました。make check も問題なし。
確かに compile.c で死ぬほど時間かかります。

コンピュータの機種: iBook G4
CPU タイプ: PowerPC G4 (1.1)
CPU 速度: 1.07 GHz
二次キャッシュ(CPU 単位): 512 KB
メモリ: 1.25 GB
バス速度: 133 MHz

だと

機種名: Mac mini
プロセッサ名: Intel Core Solo
プロセッサ速度: 1.5 GHz
二次キャッシュ: 2 MB
メモリ: 2 GB
バス速度: 667 MHz

の十倍ぐらいコンパイルに時間がかかる。

Kahua インストール失敗

火曜日, 11月 13th, 2007

Karetta|Gaucheプログラミング立読み版|Kahuaインストールを見ながら Kahua を OS X (10.3.9) に入れようとしているのだが、
make check でこけるなあ。(OS X 10.4.10 では問題なし)

gosh -V
Gauche scheme interpreter, version 0.8.12 [utf-8,pthreads]

Kahua-1.0.7.1

gosh: "error": Compile Error: cannot find file "gauche/net.scm" in *load-path* ("../src" "/usr/local/share/gauche/site/lib" "/usr/local/share/gauche/0.8.12/lib")
"././rollback.scm":9:(use gauche.net)

ん、試しに Gauche のソースディレクトリで make check してみると
同じエラーが出てる…

(追記)解決しました。

OS X + gosh でデリートキー(バックスペース)矢印キーがきかない

月曜日, 11月 12th, 2007

OSX で HHK Lite を使っているのですが、gosh でデリートキーやら左矢印やらをを押すと
^H とか ^[[D が表示されてしまいます。
デリートキーについてはターミナルのウインドウの設定の
「delete キーで backspace を送る」
のチェックを外してやれば一応うまくいくのですが
左矢印は相変わらす backspace にはなってくれません。

Gauche 的には
Readline module for Gauche
を使うというのがありますが

コマンドラインインタプリタで
Python な人も
MacPorts + rlwrap で Mac OS X 上の Python インタプリタが良い感じ
Ruby な人も
rlwrap - readline ラッパーCommentsAdd Star
同じ問題に遭遇するようで
rlwrap, Emacs midi-input and p5httpd
で解決みたいです。

私は OS 10.4 では fink からインストールしました。

fink install rlwrap

OS 10.3 では fink に入っていなかったのでソースから make
そのさい fink の readline を読むように

export LDFLAGS=-L/sw/lib
ln -s /sw/include/readline /usr/include/readline
./configure
make
make install

としました。

rlwrap gosh

でうまくいきました。ヒストリー機能もあります。

.bash_profile に

alias gosh='rlwrap gosh'

してしまいました。

(追記)ledit というのもあるよ。