Masahiro Sakai
-
2012-05-15T11:01:05+0000
- 更新日時:
2012-05-15T11:01:05+0000
mkTextEncoding: invalid argument (Invalid argument) ぎゃふん。
共有中: 一般公開
Masahiro Sakai
-
2012-05-16T13:17:56+0000
ああ、スタティックリンクしたとはいえ、iconv_openが /usr/lib/x86_64-linux/gconv 辺りを見に行ってしまって、それが存在しないか何かで落ちてしまってるんだな。
プログラム内からstdinとかstdoutに対してhSetEncodingかhSetBinaryModeを呼ぼうかと思ったけど、base-4.3.1.0の場合、Handleを操作しようとした時点で、unsafePerformIOで埋め込まれたiconv_openがで実行されてしまう。
base-4.5.0.0だと、Handleに触る前に、setLocaleEncodingでiconv不要なエンコーディングを指定してしまえば、unsafePerformIOで呼ばれるコードの中でそちらが参照されて、うまくいきそうだが……
どうしようかなぁ……
プログラム内からstdinとかstdoutに対してhSetEncodingかhSetBinaryModeを呼ぼうかと思ったけど、base-4.3.1.0の場合、Handleを操作しようとした時点で、unsafePerformIOで埋め込まれたiconv_openがで実行されてしまう。
base-4.5.0.0だと、Handleに触る前に、setLocaleEncodingでiconv不要なエンコーディングを指定してしまえば、unsafePerformIOで呼ばれるコードの中でそちらが参照されて、うまくいきそうだが……
どうしようかなぁ……