Strawberry Perl 5.22.1.3 (32bit)でText::Mecabをインストールできない

ポータブル版でWin-Rからportableshell.batを開き、cpanm --notest --interactive Text::MeCab((cpanmでビルドする場合mecab-configのないWindowsでは--interactiveが必要。)) するとエラーになる。ビルドログには以下のメッセージ。

g++.exe -o blib\arch\auto\Text\MeCab\MeCab.xs.dll ... dll.exp
path\to\MeCab\sdk\libmecab.lib: error adding symbols: File format not recognized
collect2.exe: error: ld returned 1 exit status
dmake.exe:  Error code 129, while making 'blib\arch\auto\Text\MeCab\MeCab.xs.dll'

libファイルが認識されていないようだが、filegcc-ar tしてみると壊れてはいない雰囲気。
ためしに前にビルドが成功したStrawberry Perl 5.20.2.1に付いているcディレクトリと一時的に入れ替えてみたところ、正常にビルドできた。

5.22付属のMinGW環境が何かおかしいのかもしれない。ただWin32::Registryなど、特に外部ライブラリを必要としなさそうな他のモジュールのビルドは付属のもので正常にできた。


プログラムのバージョンを調べてみたら5.20.2の方が新しかった。いっそ入れ替えたまま使ってもいいかもしれない。

Perl GNU ld gcc
5.20.2 2.25 4.9.2
5.22.1 2.24 4.8.3

結局前のバージョンに戻した

LWP::UserAgentにおいてcallbackを使ったリクエスト発行でレスポンスポディが取れない問題が発生した。普通のファイルへの格納はできる雰囲気なので、そこまで複雑な問題ではないはずなのだが、ちょっとしたパッチで解決できる見通しが立たない。
Perlのバージョンアップに際しての一連の問題だったので前のバージョンに戻すことにした。qr//nはしばらくお預けになってしまった。