[Armadillo:08496] Re: ロケールでエラー(Armadilloー440)

Koyo Takenoshita email@hidden
2012年 12月 27日 (木) 12:03:58 JST


竹之下です。

一部、荘司が言っていることとかぶるのですが。。

> 1)Armadilloのデフォルトではx11を使用しているが、ロケールは
>  設定していないのでしょうか?
特に、設定はしていません。

> 2)ロケールデータは、usr/share/localeからusr/lib/localeに
>  アーカイブで作成され、
そうですね。
localedef(1)というコマンドで生成できます。

> 最終的には"/etc/defaults/locale"
/etc/defaults/locale には、単に LANG=ja_JP.UTF-8 などの
変数が記述してあるだけです。ロケールの設定が必要なところでは、
みんな共通でこの設定を読み込んで使いましょう、ということに
なっているようです。

>  でPAMによって利用されるようになる(と書いてありました)。
>  Atmark-distではPAMなる物をサポートしていますでしょうか?
PAMはロケールとは関係ありません。

>  サポートしていないとすると、ロケールはどのように設定すれば
>  良いのでしょうか?
/usr/lib/locale にロケールデータを置き、LANG環境変数を設定する
という流れになります。

/usr/lib/locale/locale-archive は、ロケールデータのアーカイブなので、
どのロケールが入っているか分かりません。
ATDE上で、下記のようにlocakedefを実行することで、特定のロケールデータを
生成できます。

ja_JP.UTF-8のロケールデータを生成する例:
  localedef -i ja_JP -c -f UTF-8 ./ja_JP.UTF-8

生成された ja_JP.UTF-8ディレクトリを、Armadilloの/usr/lib/locale/
ディレクトリにコピーしてください。
※/usr/share/localeのデータは、Armadillo上での実行時には不要です。

また、LANG環境変数を設定するには、
/etc/defaults/locale に設定を記述してあるならば、

. /etc/defaults/locale  #設定の読み込み
export LANG             #LANG環境変数をexport

とすると、exportできます。

X serverにロケールを反映させるには、
vendors/AtmarkTechno/Armadillo-440/etc/init.d/xfbdev で、
X serverを起動する前に、LANG環境変数をexportするように
するとよいと思います。

これで、とりあえずロケールの設定はできるはずです。
※根本的な問題がフォントが無いことであった場合、また別の対応が必要に
 なります。

(2012/12/26 14:01), watanabe wrote:
> 渡辺です。
> 
> 件名を変更しました。
> 
> XCreateFontSetでエラーになっているのかと調べましたが、
> やはりロケールでエラーになっているため、XCreateFontSetでも
> エラーになっているようです。
> 
> 気分を一新して、デフォルト状態ではどうなっているかを
> 調べてみました。
> Armadillo-440を出荷状態に戻してから、
> XSupportsLocale()を行うPRGを作成して実行してみたら、
> その状態でエラーになってしまいました。
> DISTはdebianではなく、Atmark-distを使用しています。
> 
> 以下についてご教示ください。
> 2)はArmadilloについての質問ではなく、LINUXに関する質問に
> なってしまうかも知れませんがご容赦ください。
> 
> 1)Armadilloのデフォルトではx11を使用しているが、ロケールは
>  設定していないのでしょうか?
> 2)ロケールデータは、usr/share/localeからusr/lib/localeに
>  アーカイブで作成され、最終的には"/etc/defaults/locale"
>  でPAMによって利用されるようになる(と書いてありました)。
>  Atmark-distではPAMなる物をサポートしていますでしょうか?
>  サポートしていないとすると、ロケールはどのように設定すれば
>  良いのでしょうか?
> 
> 以上、どうぞよろしくお願い致します。
> 
> (2012/12/21 17:38), watanabe wrote:
>> 渡辺です。
>>
>> 先程の質問ですが、自己解決しました。
>> どうもお騒がせしました。
>> my-product/config.linux-2.6.xを直接いじることにより、
>> 32Mから64Mに変更されて、無事にブート出来ました。
>>
>> しかし。。。
>>
>> 本来は
>> setlocale(LC_TYPE, "");
>> XSupportsLocale()でエラーになってしまう対策で
>> ロケールの環境を作成していましたが、結局駄目でした。
>>
>> 現在の設定は、
>> usr/lib/locale/locale-archive
>> usr/share/locale/en
>> usr/share/locale/ja
>> としました。ATDEにはusr/share/locale以下に沢山のフォルダ
>> があったのですが、そんなに入れられないので、フォルダ名から
>> これだろうと見当を付けて、enとjaだけにしました。
>>
>> その結果、
>> setlocale(LC_TYPE, "");
>> では"C"が返ってきますが、
>> XSupportsLocale()では、相変わらずNULLが返ってきます。
>> まだlocaleの設定が悪いのでしょうか?
>>
>>
>> (2012/12/21 16:40), watanabe wrote:
>>> 渡辺です。
>>>
>>> 回答ありがとうございます。
>>> LINUXに不慣れなため、確認に時間が掛かってしまいました。
>>>
>>> ATDEの/usr/lib/locale/locale-archive(約2Mバイト)を
>>> Armadilloに送ったのですが、リブートすると以下のエラー
>>> が出て固まってしまいます。
>>> "RAMDISK: ext2 filesystem found at block 0
>>> RAMDISK: image too big! (34807KiB/32768KiB)
>>> List of all partitions:"
>>>
>>> Ramdiskのサイズがオーバしてしまい、立ち上がれないのかと
>>> 思います。過去のメーリングリストを調べてみたら、
>>> [Armadillo:00952]カーネル側の設定を変更する必要がありそう
>>> だと分かりました。
>>>
>>> email@hidden:~/atmark-dist$make menuconfig
>>> で設定を変更しようと思ったのですが、RamDiskのサイズ変更
>>> 方法の場所が見つかりません。
>>>
>>> RamDiskのサイズを増やす方法をご教示ください。
>>>
>>> (2012/12/19 9:55), Yasushi SHOJI wrote:
>>>> At Tue, 18 Dec 2012 19:17:19 +0900,
>>>> watanabe wrote:
>>>>>
>>>>> ・ロケールでエラーが出るので、
>>>>> ・locaeldefを行いたい
>>>>> ・そのために、\atmark-dist-20121023\glibc\locale\をmakeする
>>>>> ・makeでエラーが出る(インクルードファイルが無いなどのエラー)
>>>>>  のでそのエラーをつぶす
>>>>>
>>>>> アプローチの仕方は合っていますでしょうか?
>>>>
>>>> 上記の方法だと大変なので、「」localdef されたものを Debian から Atmark
>>>> Distの環境に持っていってはどうか?」というのが提案でした。
>>>>
>>>> 上記、「Debianから」というところが問題です。
>>>>
>>>>      1) Armadillo で Debian 環境を構築し、そこからデータファイルを移動
>>>>      2) ATDE はすでに Debian 環境なので、そこからデータファイルを移動
>>>>
>>>> という方法が考えられます。1) の方法が直感的ですし間違いがない方法なので
>>>> すが、2)でも問題なく動くのではないかな?と思っていました。
>>>>
>>>> 1) の方法でも、Armadilloサイトから Debian をダウンロードできるので、そ
>>>> れほど手間ではないと思います。
>>>>
>>>>> また、\atmark-dist-20121023\glibc\以下のフォルダはmakeだけでは
>>>>> エラーが出てしまうのでしょうか?ちなみに、VMwarePlayerでATDE3で
>>>>> ビルドしています。
>>>>
>>>> すみません。上記 glibc は過去の遺産で、今は使われていません。
>>>>
>>>
>>> _______________________________________________
>>> armadillo mailing list
>>> email@hidden
>>> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
>>>
>>
> 
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
> 

-- 
Koyo Takenoshita




armadillo メーリングリストの案内