>>784
>>785
2chってすごいな。習熟者からこんなすばやいご指導をいただけるとは。
さっそくLC_ALLを設定してみたら見事に正しいlocaleが得られた。
そのときにLC_ALL=en_US.UTF-8なら問題ないのだがLC_ALL=en_GB.UTF-8
(イギリス英語)だと
/bin/bash: warning: setlocale: LC_ALL: cannot change (en_GB.UTF-8)
という警告が出た。LC_ALLにはメジャーなロケールを指定しないとだめなのか、
en_GB.UTF-8 環境をインストールしていない(のかもしれない)ことが問題らしいが
これでまさに>>785のご指摘どおり setlocale() の戻り値を見ているらしいことが
わかった。
Solaris10のころはLANGの値が直にJVMの環境にも反映されていたように記憶
しているのだが、上の挙動はSolaris11上でのものだ。結局、面倒だがlogin時に
LANGの値をLC_ALLに設定し直すようなことをしなきゃだめなのかな。
いずれにせよSolarisの問題らしいのでここまでで充分です。どうもありがとう。