nDiki : ActivePerl
ActivePerl
Perl ディストリビューション。
がパッケージ化されている。
Perl モジュールについては PPM によって管理されている。 普通にソースパッケージから (n)make install でインストールすることもできるが、できれば PPM パッケージを作成してインストールした方がトラブルが少ない。
メモ
コマンド プロンプトを開かない -> wperl.exe を使う。
バージョン別情報
- ActivePerl 5.8.6.811
- ActivePerl 5.8.7.813
- ActivePerl 5.8.8.816
- ActivePerl 5.8.8.817
- ActivePerl 5.8.8.818
- ActivePerl 5.8.8.819
- ActivePerl 5.8.8.820
- ActivePerl 5.8.8.822
- ActivePerl 5.10.0.1001
- ActivePerl 5.10.0.1002
- ActivePerl 5.10.0.1003
スポンサード リンク
Related term
2004年9月21日 (火)
■ ActivePerl 5.8 用 PDL 2.4.1

実は SourceForge.net にあった。 まだ動作確認していないが、問題なければこれで ActivePerl 5.6.1 ともおさらば。
その場合は PPM リポジトリを再構築しなおしであるが。
- PAR を ActivePerl 5.6.1 build 638 に (2004-07-20)
- [ Perl ] PDL::PP で C extension を書く (2004-02-19)
- PAR::Repository でビルド済み Perl モジュールをネット... (2006-12-12)
- bundle を作成して Perl モジュールをまとめてインストール。 (2004-10-21)
- ActivePerl 5.8.8.820 の PPM では ppd/tar... (2007-02-05)
2004年9月22日 (水)
■ ActivePerl 5.6.1 -> 5.8.4

PDLの動作確認がとれたのでプロジェクトで使用するバージョンを v5.8.4 に上げることにする。 PPM パッケージ全部作りなおし。4時間ちょいかかった。
ついでに ithreads まわりもチェック。
- ActivePerl で Ming (2005-02-23)
- PAR::Repository でビルド済み Perl モジュールをネット... (2006-12-12)
- 自前 PPM リポジトリの管理 (2006-07-03)
- PPM とか (2003-10-01)
- rsync の --copy-unsafe-links (2004-08-21)
2004年10月14日 (木)
■ PPM::Make と META.yml

PPM::Make の make_ppm で ppd ファイルを作成すると自動的に DEPENDENCY 要素を生成してくれる。 今作っているパッケージ、 Windows の ActivePerl 下で動かす時には追加の依存モジュールが(Win32::*)あるので、Makefile.PL の中で $^O を見て PREREQ_PM に追加を行っている。
で気がつくとこれが ppd に反映されていない。
ソースを見たところ META.yml があってこれから情報が取得できている時は、Makefile を見にいかないようになっている。 META.yml が無いか、必要な情報が取れていない場合は、Makefile をスキャンして PREREQ_PM などを取得している (Makefile.PL ベースの場合)。
ここでパッケージの作成(make dist)を Linux 上で行っている関係で META.yml には Windows 環境特有の requires が入らないため、結果 ppd に DEPENDENCY が足りない事になる。
ということでこれからはとりあえず安直に、 make_ppm の直前に META.yml を削除することにしよう。
- PAR を ActivePerl 5.6.1 build 638 に (2004-07-20)
- ActivePerl で Ming (2005-02-23)
- [ Perl ] PDL::PP で C extension を書く (2004-02-19)
- PAR::Repository でビルド済み Perl モジュールをネット... (2006-12-12)
- WiKicker の Win32 対応 (2005-04-04)
2004年10月21日 (木)
■ bundle を作成して Perl モジュールをまとめてインストール。

依存モジュールが多くなってきて、開発しているPerl モジュールの実行環境構築が面倒になってきた。
ActivePerl では PPM パッケージ化 + PPM リポジトリで芋蔓式インストールが可能である。 素のPerlだとCPANモジュールでネットワークインストールする事になる。 ここで一個づつインストールしていくのがかったるい。 ということでCPANにあるモジュールのように Bundle::* を作る事にした。
調べてみると簡単。
- bundle はただのPerl モジュールである。
- Bundle:: 名前空間に置く。
- =head1 CONTENTS Podセクションを置き、各行に1つづつ依存モジュールを列挙する。
フォーマットは以下。
Module_Name [Version_String] [- optional text]
これだけ。Pod に書かせるあたり、とりあえずから始まった感じである。
CPAN上に置あるものはきちんと tarball 化してあるが、ローカルで使う分にはこの bundle Perl モジュールを @INC のどこかに置いておけばよい。
Bundle::MyModule を作ったとすると perl -MCPAN -e shell から 'install Bundle::MyModule' でOK。
@ CPAN と @INC 上の '.'
カレントディレクトリの下に Bundle/MyModule.pm を置いて
perl -I . -MCPAN -e shell
として Bundle::MyModule をインストールしようとしたのだがうまくいかない。CPAN のシェル上の ! コマンドで @INC を出力してみると . が含まれていない。何故? PERL5LIBに設定しても同様。 試行錯誤したところ絶対パスで指定すればOKであった。
CPAN.pm 1.76_01 を読んでみた。
no lib "."; # we need to run chdir all over and we would get at wrong
# libraries there
これだ。
- ActivePerl で Ming (2005-02-23)
- PAR::Repository でビルド済み Perl モジュールをネット... (2006-12-12)
- Module::Build でソースパッケージング (2005-08-24)
- 自前 PPM リポジトリの管理 (2006-07-03)
- WiKicker に JSON でのページ出力機能を追加 (2007-04-03)
2004年11月25日 (木)
■ nmake で毎回 pl2bat されるのを何とかしたい

EXE_FILES でインストールするスクリプトを指定してある Makefile.PL を ActivePerl 上で実行して nmake をかける。 また nmake する。
するとソースを書き換えてないにもかかわらず、EXE_FILES指定ファイルの blib/script へのコピーと pl2bat の実行が行われる。 嫌な感じ。
追いかけてみると
- UNIX上の場合 FIXIN *1 が blib/script にコピーされたスクリプトを上書きするため更新時刻が変更され、次の make では最新と判断される。
- Windows上の場合 FIXIN *2 は blib/script にコピーされたスクリプトからバッチファイルを生成する。このためコピーされたファイルの更新時刻は、ソースと同じのまま。依存関係で指定されている Makefile の方が新しいので次の nmake でも同じ処理が繰り返される。
というわけ。コピーした後 touch するようにすればよい。
perl -MExtUtils::Command -e touch %1 pl2bat %1
という内容の touchpl2bat.bat を作って
nmake FIXIN=touchpl2bat
とすればきちんと更新時刻が反映されビルドは1回だけになる。 毎回指定するのは面倒なので、MSWin32 なら自動的にそうするようにパッケージングしたいのだが nmake で他にうまく FIXIN を上書きする方法がみつからず (MY::postamble で書き出しても、WriteMakefile(macro => {FIXIN => 'touchpl2bat'}, ...) しても駄目)。
- Module::Build でソースパッケージング (2005-08-24)
- [ Perl ] PDL::PP で C extension を書く (2004-02-19)
- ActivePerl で Ming (2005-02-23)
- PAR::Repository でビルド済み Perl モジュールをネット... (2006-12-12)
- SCons は GNU Autotools のかわりになるか (2005-04-20)
2004年11月26日 (金)
■ HTTP::Daemonベースのプログラムのテスト

make test でテストしておけるようにしておきたい。
ということで王道。fork して daemon プログラムを exec。 WWW::Mechanizeで daemon に HTTP でアクセスし各種テスト。
終わったら kill。
Win32 (ActivePerl)では fork + exec で起動できるのだけれど kill では死なない。 ということで Win32::Process::Create で直接起動して、Win32::Process::Kill で終了させるという別解で。
HTTP + HTMLのテストは、以前ちょっと使ったことのあるHTTP::WebTestを使おうかと思ったが、なんだかんだいって WWW::Mechanize の方が好きなように書けそうなのでこちらをチョイス。
- XMLRPC::Lite + 自前の HTTP::Daemon サーバ (2004-09-14)
- ActivePerl 5.6.1 Build 638 にバンドルされている... (2004-08-19)
- iモードHTMLシミュレータ Version 7.2 (2005-05-10)
- WiKicker の Win32 対応 (2005-04-04)
- Perl CGI プログラムのテストには WWW::Mechanize::... (2006-02-18)
2005年2月23日 (水)
■ ActivePerl で Ming

ActivePerl で Ming を使えるようにしておきたい。
@ Visual Studio で
Ming 0.3 beta1 のソースパッケージには Visual Studio 6.0 用のプロジェクトファイルが含まれている。 Cygwin の Bison と flex があればライブラリをビルドできるようだ。 横着して Linux 側で bison と flex で生成したファイルをコピーして(それから unistd.h をインクルードしている部分を消して)、ビルドしてみたところ一応 lib ファイルは作成成功。
しかし ActivePerl 用にPerl モジュールの make は失敗。
@ MinGW + nmake で ActivePerl のモジュールをビルドできるらしい
調べたところ ExtUtils::FakeConfig を使うと Visual Studio が無くても MinGW + nmake でモジュールをビルドできるらしい(全てではないと思うが)。
ということで Ming を MinGW でビルドした後、そのまま ActivePerl 用モジュールの作成まで持ち込むことにしてみる。
@ MinGW + MSYS + GnuWin32 で開発環境を構築
コンパイルに必要な環境を MinGW で、configure に必要な環境を MSYS で用意する。
@ bison は GnuWin32 で
Ming のビルドに必要な Bison は MinGW、MSYS のインストーラに含まれていない。 bison-1.875.0-2003.02.10-1.exe というのが別途あるがうまく動かない。
ソースパッケージ(bison-2.0.tar.gz、bison-1.875.tar.gz)からはビルドできず。 MinGW/MSYSのプロジェクトにある bison-1.875-2003.02.10-1-src.tar.gz はビルドできるものの make check が通らない。
とうことで GnuWin32 の bison-1.875-4.exe (インストーラ形式)をインストール。 c:/usr/local/GnuWin32 にインストールした後、MSYS の /etc/fstab で /GnuWin32 にマウントし、/GnuWin32/bin に PATH を通しておく。
@ flex はソースパッケージから
flex-2.5.4a.tar.gz を展開して
./configure; make; make check; make install
インストール時ハードリンクが作れなくてエラーがでているようだが無視。
@ zlib (Ming で必要)
MSYS 上でビルドしてインストール。zlib-1.2.2.tar.gz を展開して
./configure; make; make check; make install
@ LibUnGif for Windows (Ming で必要)
MSYS 上でビルドしてインストール。 libungif-4.1.0b1-src.zip を展開して
rm config.cache; config.h内の-DHAVE_VARARGS_Hをコメントアウト。 ./configure; make; make install
make check はエラーが出るが無視。
@ libpng (Ming で必要)
MSYS 上でビルドしてインストール。libpng-1.2.8-config.tar.gz を展開して
CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib ./configure make; make check; make install
@ いよいよ Ming
MSYS 上でビルド。ming-0.3beta1.tar.gz を展開して
CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib make static
@ ActivePerl 用モジュール作成
ExtUtils::FakeConfig と PPM::Make で Ming の SWF PPM パッケージを作成する。 (MSYSのシェルではなく)コマンド プロンプトを開いて、Mingソースパッケージの中の perl_ext に移動。 MSYS、MinGW、nmake にPATHを通しておく。
それから Makefile.PL の実行で -lz を発見できないので、libz.a を Makefile.PL と同じディレクトリにコピーしてしまう(-L/usr/local/lib を指定しても効かなかったので)。 libpng.a、libungif.a も同じくコピーしておく。
Makefile を作成。Makefile.PL では -lz しか指定していないが、libpng と libungif も必要なのでコマンドラインオプションで指定する。ExtUtils::FakeConfig の Config_m を使用して MinGW を使用するようにする。
perl -MConfig_m Makefile.PL LIBS="-lpng -lungif -lz"
ここで生成される Makefile の中で libperl58.a を指定している部分があるが、ActivePerl では perl58.lib になるので、エディタで書き換え。 後はいつも通り
nmake nmake test make_ppm
で PPM パッケージ作成完了。
簡単なPerlプログラムでSWFファイルが作れる事を確認。 やった。
- PAR::Repository でビルド済み Perl モジュールをネット... (2006-12-12)
- Module::Build でソースパッケージング (2005-08-24)
- Windows 用 GNU tar (2004-08-05)
- Windows 用 GNU Make (2004-07-24)
- OpenSSH for Windows (2004-08-05)
2005年3月31日 (木)
■ Wineを入れてみる

Linux 上で Win32 用の ActivePerl を動かして、PPM パッケージの作成や PAR による実行可能ファイルの作成をできるようにしたい。
調べたところ Wine 上でも ActivePerl が動くらしい。 さっそく Debian GNU/Linux の sid 環境にインストールしてみる。
debパッケージは以下をインストール。
- wine
- wine-utils
- winesetuptk
- wine-doc
- msttcorefonts
winesetup を実行して ~/.wine 以下を作成。 winesetup が古いのか wine を実行すると
Please use the registry key HKEY_CURRENT_CONFIG\Software\Fonts\LogPixels to set the screen resolution and remove the "Resolution" entry in the config file
という警告がでるので、[fonts] の中の
"Resolution" = "96"
をコメントアウト。
次に msi 形式になっている ActivePerl インストーラを動かすために、Windows Installer をインストールする。
失敗。設定がうまくいっていないのか、何かが足りないのか。
usr/share/wine/wineinstall で ~/.wine 以下を作っても駄目。
要調査。
- PAR::Repository でビルド済み Perl モジュールをネット... (2006-12-12)
- ActivePerl で Ming (2005-02-23)
- Debian GNU/Linux sid 環境を新 HDD へ (2006-07-29)
- xyzzyを読み取り専用メディアから起動する (2004-07-28)
- NSIS 2.22 は Linux でビルドできず (2006-12-20)
2005年4月1日 (金)
■ Wine の設定は winetools で

winetools を使ったところ ~/.wine 以下の設定や、Windows Installer のインストールが簡単に行えた。
/etc/apt/sources.list に
deb http://wine.sourceforge.net/apt/ binary/ deb-src http://wine.sourceforge.net/apt/ source/
を加えて wintools パッケージをインストール。 で winetools を起動し、GUIベースで基本的なソフトウェアをインストールする。
Windows Installer をいれたら ActivePerl をインストールして動かしてみる。
wine "c:\\windows\\system\\msiexec.exe" /i \ ActivePerl-5.8.6.811-MSWin32-x86-122208.msi wine "c:\\Perl\bin\perl" -v
動いた。
- Wineを入れてみる (2005-03-31)
- Pentium 4 マシンから Athron 64 マシンに乗り替え (2008-09-05)
- QEMU を使って Debian GNU/Linux 上で Windows... (2005-04-08)
- フォト イメージング エキスポ 2005 (2005-03-18)
- 128MB xDピクチャーカードのために我慢我慢 (2005-04-03)
2005年4月4日 (月)
■ WiKicker の Win32 対応

WiKicker をベースにちょっとしたWebアプリケーションを作ろうという話になったのだが、そういえば Win32 対応していない。
ということで ActivePerl で動くように手を入れる。 まずは make test が通るようになるまで修正。
あたりを修正してだいたい対応できたようだ。 同梱している DiKicker の方は DB_File::Lock の make test が通らないので、とりあえず使用不可ということで。 WiKicker の方も flock まわりがきちんと動いているか確認する必要があるな。
- Windows 上での Apache 2.0.53 では PATH_INF... (2005-04-10)
- Windows 上の WiKicker で履歴機能が動かないのは環境変数 ... (2006-11-27)
- [ Perl ] Log::Log4perlのはまりどころ (2004-03-02)
- Win32 で WiKicker が落ちるのは binmode の設定忘れのせい (2005-04-18)
- WiKicker 0.25 リリース - Win32 対応は動作未確認 (2005-05-07)
スポンサード リンク
■よく検索されるキーワード
torrent(109) x31(45) thinkpad(31) 動画(29) 提案書(26) mp980(24) 手帳(24) windows(23) linux(23) 画像(21) 使い方(21) リフィル(21) debian(20) usb(20) tc-1(19) perl(19) 筆まめ(18) 壁紙(17) ほぼ日手帳(16) 冷蔵庫(14) ドラマ(13) wiki(13) 書き方(12) ダイソー(12) システム手帳(12) 宮根誠司(12) ノート(11) so905ics(11) 無印(11) バッグインバッグ(11) 映画(11) 設定(10) 修理(10) 宮根(9) ssh(9) a6(9) ほぼ日(9) 黒田征太郎(9) バッグ(9) gmail(8) 感想(8) 娘(8) f-01a(8) メモリ(8) gtd(8) ブログ(8) nikon(8) allinanchor:*.torrent(8) ボールペン(7) 方眼(7) ポイント(7) 4c(7) ヨドバシカメラ(7) ケース(7) twitter(7) apache(7) ht-01a(7) ヨドバシ(7) ubuntu(7) truecrypt(7) n-02a(7) 作り方(7) minolta(7) af(6) インストール(6) ガントチャート(6) mp3(6) zippo(6) hdd(6) emacs(6) レビュー(6) カバー(6) vq1005(6) 日本語(6) ハクキンカイロ(6) 無印良品(6) グレゴリー(6) 交換(6) nikkor(6) pixus(6)■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザイン ビックカメラProcess Time: 0.074713s / load averages: 0.36, 0.31, 0.26
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)



スポンサード リンク