あたらしものずきっ!

試してみたものとか、遊んでみたものを色々記してみます。

古いCGIをモダンにCatalystへ移植してみる

とあるwindowsフリーゲームの公認ファンサイト運営に関わってるのだけれど、そこで使われているとあるCGIが約10年前の代物。運営スタッフではない人が一から作ったものであるため、誰も中身熟知してなくて放置されてた。

最近はCPANの使い方とか色々説明も増えているため、思い切ってソースを読み解いてリプレースするのも有りかとおもえた。機能追加とかそうしないとできそうにもないし。

流石にソースコードはオープンに扱われていない代物だったから、書けるのは部分的な処理くらいか。とりあえず設置するまでの過程でもログとして。設置場所はさくら。シェルはあらかじめzshをソースからインストール済み。

環境設定

export PKG_DBDIR=$HOME/local/var/db/pkg
export PORT_DBDIR=$HOME/local/var/db/pkg
export INSTALL_AS_USER
export LD_LIBRARY_PATH=$HOME/local/lib
mkdir -p ~/local/var/db/pkg

local::lib

cpan
..
cpan> exit

wget http://search.cpan.org/CPAN/authors/id/A/AP/APEIRON/local-lib-1.004008.tar.gz
tar xvfz local-lib-1.004008.tar.gz
cd local-lib-1.004008
perl Makefile.PL --bootstrap
make && make test
make install
echo 'eval $(perl -I$HOME/perl5/lib/perl5 -Mlocal::lib=$HOME/perl5)' >>~/.zshrc
source ~/.zshrc

cpan

cpan
cpan> o conf prerequisites_policy follow
cpan> o conf build_requires_install_policy yes
cpan> o conf commit
cpan> install Bundle::CPAN
cpan> reload CPAN
cpan> install Task::Catalyst