OldType解剖メモ
OldTypeのバックエンドをいろいろ覗いてみる。
sourceforgeからソースをもってくる
今回いろいろいじったバージョンはこれ。
URL: http://svn.sourceforge.jp/svnroot/oldtype リポジトリのルート: http://svn.sourceforge.jp/svnroot/oldtype リポジトリ UUID: f630802a-1f37-0410-bb6b-cab20af607b7 リビジョン: 295 ノード種別: ディレクトリ 準備中の処理: 特になし 最終変更者: kiyoka 最終変更リビジョン: 295 最終変更日時: 2008-03-01 11:07:47 +0900 (土, 01 3月 2008)
OldTypeを動かしたい
/oldtype/trunk/Kahua/oldtype にあるメモを参考にインストールしてみる。
$ ./DIST gen $ ./configure --with-site-bundle=$HOME/site/oldtype $ make $ make install
で、make installのところでエラー。
/usr/local/bin/kahua-install -S /home/haya/site/oldtype2 -t script --no-overwrite Usage: kahua-install [<options>] file ... options: -c conf-file specify configuration file. -S path-to-site specify path to a site bundle. -U uninstall files instead of installing. -t type specify install type: script|static|base|plugin|template. static by default. -r rename rename file to name. When this option is given, only one file can be specified. --no-overwrite if the target file exists, the file won't be installed. make: *** [install] エラー 1
Makefileを修正。
install: $(KAHUA_INSTALL) $(KAHUACONFIG) -t script $(SCRIPTFILES) - $(KAHUA_INSTALL) $(KAHUACONFIG) -t script --no-overwrite $(LOCALSCRIPTFILES) + # $(KAHUA_INSTALL) $(KAHUACONFIG) -t script --no-overwrite $(LOCALSCRIPTFILES) $(KAHUA_INSTALL) $(KAHUACONFIG) -t static --no-overwrite $(STATICFILES) for f in $(PLUGINFILES); do \ $(KAHUA_INSTALL) $(KAHUACONFIG) -t plugin -r $$f $(PLUGINDIR)/$$f;\
これでインストールされたらしい。
しかし、$HOME/site/oldtype以下にあるファイルがどうも足りていないらしい。よくわからないけど、Kahuaでスケルトンを予め作っておいて、そこにインストールすればいいんじゃないかと考える。
Kahuaでスケルトン作成
kahua (Kahua Project) · GitHub あたりを参考に。
$ cd $HOME/site $ kahua-package create oldtype $ cd $HOME/sourceforge/oldtype/trunk/Kahua/oldtype/ $ make $ make install
これで必要なファイルが揃ったらしい。make installのログに表示される指示に従い、site/oldtype/app-serversに以下のエントリを追加。
(oldtype :arguments () :run-by-default 1)
サーバーを起動してみる。
$ sudo kahua-spvr -S . --httpd 8080 *** ERROR: Compile Error: cannot find file "oldtype/parse.scm" in *load-path* ("/home/haya/site/oldtype/app" "/usr/local/lib/kahua" "/usr/local/share/gauche/site/lib" "/usr/local/share/gauche/0.8.13/lib") Stack Trace: _______________________________________ 0 (eval '(use oldtype.parse) m) [unknown location] 1 (initialize-plugins) At line 210 of "/usr/local/lib/kahua/kahua-server.scm"
サーバーを起動してみる。
$ sudo kahua-spvr -S . --httpd 8080 *** ERROR: Compile Error: cannot find file "oldtype/parse.scm" in *load-path* ("$HOME/site/oldtype/app" "/usr/local/lib/kahua" "/usr/local/share/gauche/site/lib" "/usr/local/share/gauche/0.8.13/lib") Stack Trace: _______________________________________ 0 (eval '(use oldtype.parse) m) [unknown location] 1 (initialize-plugins) At line 210 of "/usr/local/lib/kahua/kahua-server.scm"
どうもロードされているライブラリが、あるべき場所にないらしい。$HOME/site/oldtype/app が load-path にあるので、そこに色々投げこめばいいらしい。
$ cd $HOME/site/oldtype $ cp $HOME/sourceforge/oldtype/trunk/Kahua/oldtype/oldtype/* app/oldtype/ -r $ sudo kahua-spvr -S . --httpd 8080
起動成功? エラーで落ちる気配はない。ブラウザで http://localhost:8080/ を表示してみる。
動いた。
でも画像ファイルが読みこまれていない。調べてみると、どうも静的なファイルは $HOME/site/oldtype/static/oldtype/ 以下を読んでいるらしい。そこで、$HOME/site/oldtype/app/oldtype 以下の静的なファイルを移動する。
$ cd $HOME/site/oldtype $ mv app/oldtype/oldtype.js app/oldtype/staticimg app/oldtype/import static/oldtype/
ちゃんと画像が読めるようになった。
(つづく)