Lion + cpanm Task::Plack で EV (EV-4.03) が黙りを決め込む

久しぶりに、色々とアップデートを仕始めた矢先、

[zunermuka ~]$ cpanm --self-upgrade
[zunermuka ~]$ cpanm Task::Plack
...
==> Found dependencies: EV, Coro
--> Working on EV
Fetching http://search.cpan.org/CPAN/authors/id/M/ML/MLEHMANN/EV-4.03.tar.gz ... OK
Configuring EV-4.03 ... OK
Building and testing EV-4.03 ...

待てど暮らせど、音沙汰がない。

^C

ここまで来ているので、

[zunermuka ~]$ ls -al .cpanm/work/

それっぽい時間を探して、

[zunermuka ~]$ cd .cpanm/work/1324616792.66041/EV-4.03
[zunermuka ~/.cpanm/work/1324616792.66041/EV-4.03]$ make test
...
t/02_once.t ........ Bareword "EV::TIMER" not allowed while "strict subs" in use at t/02_once.t line 19.
Bareword "EV::WRITE" not allowed while "strict subs" in use at t/02_once.t line 27.
Execution of t/02_once.t aborted due to compilation errors.
t/02_once.t ........ Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 30/30 subtests
...
t/06_loop_once.t ... Bareword "EV::TIMER" not allowed while "strict subs" in use at t/06_loop_once.t line 19.
Bareword "EV::WRITE" not allowed while "strict subs" in use at t/06_loop_once.t line 27.
Execution of t/06_loop_once.t aborted due to compilation errors.
t/06_loop_once.t ... Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 6/6 subtests
...
t/09_brandon.t ..... ok
t/11_signal.t ...... 1/24 Argument "EV::RUN_ONCE" isn't numeric in subroutine entry at t/11_signal.t line 48.
^Cmake: *** [test_dynamic] Interrupt: 2

素直に google で Bareword "EV::TIMER" not allowed を探す。

http://lists.schmorp.de/pipermail/libev/2011q3/001485.html

> http://llvm.org/bugs/show_bug.cgi?id=9891

http://lists.schmorp.de/pipermail/libev/2011q3/001485.html

http://lists.schmorp.de/pipermail/libev/2011q3/001487.html

> You would definitely be better off with gcc or a current llvm release.

手っ取り早く patch を当てるか、gcc を指定すれば良いのか。

[zunermuka ~/.cpanm/work/1324616792.66041/EV-4.03]$ perl Makefile.PL cc=gcc

[zunermuka ~/.cpanm/work/1324616792.66041/EV-4.03]$ make test

t/11_signal.t ...... 1/24 Argument "EV::RUN_ONCE" isn't numeric in subroutine entry at t/11_signal.t line 48.
^Cmake: *** [test_dynamic] Interrupt: 2

変わらん

[zunermuka ~]$ cc -v

gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)
[zunermuka ~]$ gcc -v
...
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)

冷静に考えれば、変わるはずがない。

[zunermuka ~]$ gcc で補完すると
gcc gcc-4.2 gccmakedep
[zunermuka ~]$ gcc-4.2
i686-apple-darwin11-gcc-4.2.1: no input files

これか

[zunermuka ~/.cpanm/work/1324616792.66041/EV-4.03]$ perl Makefile.PL cc=gcc-4.2
...
[zunermuka ~/.cpanm/work/1324616792.66041/EV-4.03]$ make test

All tests successful.
Files=11, Tests=6875, 6 wallclock secs ( 0.72 usr 0.06 sys + 0.35 cusr 0.09 csys = 1.22 CPU)
Result: PASS

嬉しい

[zunermuka ~/.cpanm/work/1324616792.66041/EV-4.03]$ make && make install
...
gcc-4.2 -c -Ilibev -fno-common -DPERL_DARWIN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -O3 -DVERSION=\"4.03\" -DXS_VERSION=\"4.03\" "-I/Users/zunermuka/perl5/perlbrew/perls/perl-5.14.2/lib/5.14.2/darwin-2level/CORE" -DEV_USE_MONOTONIC=1 -DEV_USE_REALTIME=0 -DEV_USE_SELECT=1 -DEV_USE_POLL=1 -DEV_USE_EPOLL=0 -DEV_USE_KQUEUE=1 -DEV_USE_PORT=0 -DEV_USE_INOTIFY=0 -DEV_USE_EVENTFD=0 -DEV_USE_SIGNALFD=0 EV.c
Running Mkbootstrap for EV ()

Appending installation info to /Users/zunermuka/perl5/perlbrew/perls/perl-5.14.2/lib/5.14.2/darwin-2level/perllocal.pod

当初の目的

[zunermuka ~]$ cpanm Task::Plack
...
Building and testing Task-Plack-0.25 ... OK
Successfully installed Task-Plack-0.25
17 distributions installed

なぜか非常に情けない気分

コメント

このブログの人気の投稿

[memo] LibreOffice バージョン: 5.2.6.2 Calc でエラーがでた BASIC を読み込む際の エラー:一般的なエラー.一般的な I/O エラー。

[memo] macbook air の wezterm で \ backslash を入力する macOS Left and Right Option Key を設定する

[memo] 日本語のファイル名をSafari でダウンロードするとバージョン 10.0.3 (11602.4.8.0.1) でも文字化けするのが辛い