[openrtm-users 00726] Re: omniNamesの日本語ログディレクトリ名

Ando Noriaki n-ando @ aist.go.jp
2008年 12月 30日 (火) 18:04:44 JST


三宅様、OpenRTM-usersの皆様

産総研 安藤です

omniNamesのログディレクトリに日本語パス名を渡すと
うまく起動しない件ですが、静岡大の清水さんに修正方法を
教えていただきました。

こちらでパッチを当ててバイナリを配布するという手もあるのですが、
omniORBのバージョンアップごとにそれを行うのも大変なので、以下のように
omniORBのMLにその件について修正パッチごと投稿しました。

幸い本家のソースに修正を取り込んでもらえそうなので、
次のバージョンからはこの問題は解決しそうです。
それまではFAQの方法でこの問題を回避してください。

清水様、三宅様、栗原様ありがとうございました。

> On Sunday 21 December, "Ando Noriaki" wrote:
>
> [...]
>> Our other user found that the problem does not appear if
>> omniORB\src\appl\omniNames\log.cc
>> was modified as follows.
>>
>> around L405 in omniORB\src\appl\omniNames\log.cc
>> -------------------------------------------
>>   try {
>>   #ifdef USE_STREAM_OPEN
>> + #ifdef __WIN32__
>> + setlocale(LC_ALL, "");
>> + #endif
>>   logf.OPEN(active,ios::out|ios::trunc,0666);
>>   if (!logf)
>>   throw IOError();
>> -------------------------------------------
>>
>> Setting locale before opening log file seems not to have side
>> effects on both Windows and UNIX.  We would be very happy if this
>> modification was taken into the omniORB source code repository.
>
> Thanks. I've applied you patch, except that I moved it to always apply.
> Where you had it it only worked when omniNames was running for the first
> time.
>
> Cheers,
>
> Duncan.
>
> --
>  -- Duncan Grisby         --
>  -- duncan @ grisby.org     --
>   -- http://www.grisby.org --
>

> 安藤です
>
> 栗原様
>
> 解決策、ありがとうございました。
>
> 三宅様
>
> ご苦労をおかけしました。
> 原因はomniNamesの問題だったようですね。
> omniORBは本来UNIX上で動作させることを念頭に開発されたCORBAですので、
> 日本語のパスが渡されることは想定していないのかもしれませんね。
>
> 問題をFAQにまとめましたので、ご参考にしていただければ幸いです。
> http://www.is.aist.go.jp/rt/OpenRTM-aist/html/FAQ2FE38388E383A9E38396E383ABE382B7E383A5E383BCE38386E382A3E383B3E382B0.html
>
>
> 2008/12/17 22:30 kurihara shinji <shinji.kurihara @ aist.go.jp>:
>> 三宅 様
>>
>> 栗原です。
>>
>> こちらで調査しましたところ、問題は、フォルダ名に日本語("三宅一輝")
>> が使用されていることが原因のようでした。
>> # omniORBの問題のようです。Javaのorbdではフォルダ名に日本語が使用され
>> # ていても問題ありませんでした。
>>
>> よって、ログディレクトリに日本語が入っていないパスを指定する事で
>> omniNamesは起動できるかと思います。
>>
>> (例)
>>  C:\Program Filesにtmpというフォルダがあるとして、
>>
>>  "%OMNI_ROOT%\bin\x86_win32\omniNames.exe" -start 2809 -logdir "C:\Program Files\tmp"
>>
>>  のように実行すると起動できると思います。
>>
>> rtm-naming.batからomniNamesを起動する場合、%TEMP%となっている箇所を
>> "C:\Program Files\tmp"のように変更する事でrtm-naming.batからomniNames
>> を起動できると思います。
>>
>>
>> 以上、宣しくお願い致します。
>>
>>
>>
>> On Wed, 17 Dec 2008 21:58:07 +0900 (JST)
>> ミヤケ カズキ <epr111jp @ yahoo.co.jp> wrote:
>>
>>> 清水様
>>>
>>>   三宅です。
>>>   だめでした。画像を添付します。ご確認してください。
>>>
>>>
>>>
>>> ---------------------------------
>>> Power up the Internet with Yahoo! Toolbar.
>>>
>>
>>
>> --
>> ----------
>> 栗原 眞二
>> shinji.kurihara @ aist.go.jp
>> kurihara @ imagination.co.jp
>>
>>
>
>
>
> --
> 安藤慶昭@独立行政法人産業技術総合研究所 研究員
>                   知能システム研究部門 タスクインテリジェンス研究グループ
>                   〒305-8568 茨城県つくば市梅園1-1-1 中央第2
>                   TEL: 029-861-5981 FAX: 029-862-6631
>                   n-ando @ aist.go.jp, n-ando @ ieee.org
>
>



-- 
安藤慶昭@独立行政法人産業技術総合研究所 研究員
                  知能システム研究部門 タスクインテリジェンス研究グループ
                  〒305-8568 茨城県つくば市梅園1-1-1 中央第2
                  TEL: 029-861-5981 FAX: 029-862-6631
                  n-ando @ aist.go.jp, n-ando @ ieee.org



openrtm-users メーリングリストの案内