前回、MinGW gccのエラー日本語化でMinGWのgccを日本語化することができました。
しかし、環境変数が(ドライブ名):\MinGW\...以外のパス名だとコンパイルは通るのにshareフォルダのlocaleが読み込まれないのか、日本語にならなくなってしまいました。
これについて自分だけの環境であるか確認したいため、もしよろしければ確認のお願いと、同じ症状が出るならどう対処すべきか教えていただきたいです。
具体的な発生条件ですが、
1.MinGWのデータが「C:\MinGW\bin」にあるなら実行時に日本語になる。
2.「C:\MinGW1\bin」など「MinGW」以外の名前だと日本語にならない。
3.「C:\MinGW\MinGW\bin」のように名前はMinGWでも、階層が違えば日本語にならない。
4.環境変数を変更してもパス名が「C:\MinGW\bin」でなければ日本語にならない。
5.GCC_EXEC_PREFIXの値を指定しても関係ない。(gcc.exeがある階層にバッチファイルでset GCC_EXEC_PREFIX=%~dp0..\lib\gcc\と指定しました)
6.バッチファイルからの直接起動とコマンドプロンプトからの環境変数起動はどちらも同じで変わりはない。
7.ドライブの違いは関係なく、MinGWの名前と階層数が合っていなければ日本語は表示されない。
以上となります。
せっかく日本語にできたのにパス名が変われば使えなくなることが非常に悔しいです。
よろしくお願いします。
MinGW gccのlocaleパスについて
Re: MinGW gccのlocaleパスについて
MinGW gccを単体で呼び出す場合の話ですよね。
環境変数MINGW_HOMEを設定すると良いみたいです。
MinGWのデータが「C:\MinGW\bin」にあるなら
MINGW_HOME=C:\MinGW
というふうに。
環境変数MINGW_HOMEを設定すると良いみたいです。
MinGWのデータが「C:\MinGW\bin」にあるなら
MINGW_HOME=C:\MinGW
というふうに。
Re: MinGW gccのlocaleパスについて
ご返信ありがとうございます。
MINGW_HOMEを設定してみましたが、残念ながら効果がありませんでした…。
もしかしてMinGW側のバグではないかと疑い始めています。
MINGW_HOMEを設定してみましたが、残念ながら効果がありませんでした…。
もしかしてMinGW側のバグではないかと疑い始めています。
Dango San
Re: MinGW gccのlocaleパスについて
Cygwin版のMingw64 gccバイナリを覗くと、"/usr/share/locale"という文字列が見えるので、パス自体はハードコーディングされているみたいです。
そうなるとルートディレクトリがどのように決定されるかという問題になります。
MinGW版はMSYSのmountコマンドでルートディレクトリを変更できるらしいので、もしかしたらMINGW_HOMEじゃなくてMSYS_HOMEが関係するのかもしれません。
そうなるとルートディレクトリがどのように決定されるかという問題になります。
MinGW版はMSYSのmountコマンドでルートディレクトリを変更できるらしいので、もしかしたらMINGW_HOMEじゃなくてMSYS_HOMEが関係するのかもしれません。
Re: MinGW gccのlocaleパスについて
ご返信ありがとうございます。
残念ながらMSYS_HOMEでも変わりはありませんでした。
実は色々と調べているときに見逃していたのですが、Cygwin + MinGW + GCC 相談室 Part 7のように、同様な疑問を持った方とそれの答えが既に出ていました。
かなり具体的に説明されていまして、解決策の一つである、もう自前でフォルダ作ってしまうという方法を応急処置としました。
ですが正直納得いかないのが本音です…。
残念ながらMSYS_HOMEでも変わりはありませんでした。
実は色々と調べているときに見逃していたのですが、Cygwin + MinGW + GCC 相談室 Part 7のように、同様な疑問を持った方とそれの答えが既に出ていました。
かなり具体的に説明されていまして、解決策の一つである、もう自前でフォルダ作ってしまうという方法を応急処置としました。
ですが正直納得いかないのが本音です…。
Dango San
Re: MinGW gccのlocaleパスについて
Cygwin版はインストールドライブ以外のドライブでもちゃんと日本語になるんですけどね。
Cygwin版というくくりじゃなくて、MinGW-w64ではちゃんとしてるということなのかもしれませんけど。
Cygwin版というくくりじゃなくて、MinGW-w64ではちゃんとしてるということなのかもしれませんけど。
Re: MinGW gccのlocaleパスについて
すみません。言われてみればMinGWもドライブの違いは関係なかったです…。ISLe さんが書きました:Cygwin版はインストールドライブ以外のドライブでもちゃんと日本語になるんですけどね。
とりあえず解決にします。
ご返信ありがとうございました。
Dango San