From: "T.Fukagawa" Date: 2003-11-11T04:09:23+09:00 Subject: [ruby-list:38781] convert EBCDIC to SJIS 深川です。 Solaris(SJIS) と IBM AS400(EBCDIC) とで、ファイルの送受信をすることに なり、SJIS->EBCDIC / EBCDIC->SJIS のコード変換が必要になりました。 google で調べた感じでは、rgettext を使用すればできそうな記述がありまし たので、ruby-gettext-package-0.5.1.tar.gz をインストールしましたが、以 下のようなエラーになってしまいました。 -------------------------------ここから------------------------------- crusoe:ruby-gettext-package-0.5.1[521]> ruby install.rb setup install.rb: entering setup phase... /cygdrive/f/ruby/ruby-gettext-package-0.5.1/./pre-setup.rb:11: warning: Insecure world writable dir /cygdrive/f/ruby/ruby-gettext-package-0.5.1, mode 040777 /cygdrive/f/ruby/ruby-gettext-package-0.5.1/./pre-setup.rb:17: warning: Insecure world writable dir /cygdrive/f/ruby/ruby-gettext-package-0.5.1, mode 040777 ---> bin set #! line to "#!/usr/bin/ruby" for /cygdrive/f/ruby/ruby-gettext-package-0.5.1/bin/rgettext ... rm -f rgettext rm -f rgettext.tmp set #! line to "#!/usr/bin/ruby" for /cygdrive/f/ruby/ruby-gettext-package-0.5.1/bin/rmsgfmt ... rm -f rmsgfmt rm -f rmsgfmt.tmp <--- bin ---> lib ---> lib/gettext <--- lib/gettext <--- lib ---> ext ---> ext/gettext ---> ext/gettext/gettext make install.rb:283: warning: Insecure world writable dir /cygdrive/f/ruby/ruby-gettext-package-0.5.1/ext/gettext, mode 040777 make: Nothing to be done for `all'. <--- ext/gettext/gettext <--- ext/gettext <--- ext ---> data ---> data/locale ---> data/locale/ja ---> data/locale/ja/LC_MESSAGES <--- data/locale/ja/LC_MESSAGES <--- data/locale/ja <--- data/locale <--- data /cygdrive/f/ruby/ruby-gettext-package-0.5.1/./post-setup.rb:18: warning: Insecure world writable dir /cygdrive/f/ruby/ruby-gettext-package-0.5.1, mode 040777 /cygdrive/f/ruby/ruby-gettext-package-0.5.1/lib/gettext/locale_win32.rb:17:in `__get': undefined local variable or method `__locale_id' for Locale:Module (NameError) from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/lib/gettext/locale.rb:20:in `get' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/lib/gettext.rb:38:in `initialize' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/lib/gettext.rb:146:in `new' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/lib/gettext.rb:146:in `bindtextdomain' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/bin/rmsgfmt:274:in `initialize' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/bin/rmsgfmt:343:in `new' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/bin/rmsgfmt:343 /cygdrive/f/ruby/ruby-gettext-package-0.5.1/./post-setup.rb:18: warning: Insecure world writable dir /cygdrive/f/ruby/ruby-gettext-package-0.5.1, mode 040777 /cygdrive/f/ruby/ruby-gettext-package-0.5.1/lib/gettext/locale_win32.rb:17:in `__get': undefined local variable or method `__locale_id' for Locale:Module (NameError) from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/lib/gettext/locale.rb:20:in `get' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/lib/gettext.rb:38:in `initialize' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/lib/gettext.rb:146:in `new' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/lib/gettext.rb:146:in `bindtextdomain' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/bin/rmsgfmt:274:in `initialize' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/bin/rmsgfmt:343:in `new' from /cygdrive/f/ruby/ruby-gettext-package-0.5.1/bin/rmsgfmt:343 install.rb: setup done. -------------------------------ここまで------------------------------- ruby は Cygwin に附属の 1.8 を使用しています。Cygwin/Devel/gettext は インストールしてありますが、何かシンボルが足りないようです。他にも必要 なパッケージがありますか。 ##その前に、ruby-gettext で EBCDIC<-SJIS の変換をするという方向性は ##間違っていますか? Unix / Windows 系が主だったので、EBCDIC のコードはまだよくわかっていま せん。どこかに、EBCDIC<->SJIS のコード変換のサンプルが公開されていませ んか。 ---- T.Fukagawa tfukaga@u01.gate01.com