日本語の情報がなかったので書いておこう・・・
情報源は、
http://www.spinics.net/lists/ecos/msg22363.html
http://bugs.ecos.sourceware.org/show_bug.cgi?id=1000095
Windowsでの作業環境があまりにも整備されていないので*1、せっかくCygwinが入ってるんだからsshd動かしてMacから作業しようと思ったのが事の始まり。
googleさんに教えてもらいながらCygwinに追加インストールした後、念のためと思って再起動したらeCosのConfiguration Toolが起動しなくなってしまったのだ(@_@;)
正確には、Configuration Toolを起動すると、Output Windowに"This package does not have any valid version subdirectories."というメッセージが大量に*2出力され、そのまま終了してしまう、という現象。Configuration Toolは愚か、Cygwinを再インストールしても回復しないと言う謎な状態(?_?)
こんな時頼りになるのはやっぱりgoogleさん(^^;
結論から言うと、/bin/cygwin1.dllの最新版(1.5.10-3)*3ではパスの扱いに不具合があるらしい。先のページの内容を引用すると、
With cygwin 1.5.9-1 under Windows XP SP1:
$ tclsh
% glob C:/tmp/.
C:/tmp/./
%
With cygwin release 1.5.10-3 under Windows XP SP1:
$ tclsh
% glob C:/tmp/.
C:/tmp/ <========= ./ has disappeared !
%
つまりは、以前のバージョン(ここでは1.5.9-1)では"C:/tmp/./"というパスが返ってくるところが、1.5.10-3では"C:/tmp/"となってしまう、という事。
そもそもちゃんと使えてたパッケージなんだし、それがいきなり全部おかしくなるとは考えにくい*4。それなのにエラーになる。チェックするにはパスを手繰るはず。
で、他の人が使ってるCygwinからこのDLLをもらい*5入れ替えてみると、無事起動(-_-)
Cygwinはネットワークインストールだったのだが、なんかの拍子にこのDLLも新しいのになってしまった*6のだろう。しかも原因がこれじゃ、何度インストールし直してもダメなわけだわ。
これで問題は無事解決・・・ ではなくて入れ替えたDLL。これはこれで結構古かったりするので、他との整合がちゃんと取れてるんだろうか? などと思ってたら案の定、build時にいきなりエラーダイアログ【爆】 やっぱりダメだったのね~(T_T) DLLの不具合を解消するpatchも公開されてたのだが、
なんて思いながらeCosのメーリングリストを見てみたら、タイムリーな事に今日届いたメールに同じ事で悩んでる人がいたりして(^^;*7 で、その回答も既に届いてて、
You can find an updated version at
http://www.ecoscentric.com/devzone/configtool.shtml
と早速新しいバージョンのConfiguration Toolをダウンロードして入れ替えてみたら、1.5.10-3のDLLでもあっさり動作(^o^) いや、良かった良かった。
*1:だって普段使わないし、使い勝手のいいツール無いし(T_T) VNCでMacから操作してるのだが、キー配列変わったりもしてさらに使い辛い(__)
*2:恐らく個々のパッケージのチェックをしてるのだろうからその分。
*3:プロパティでは1.5.10-cr-0x5e6
*4:可能性が0ではないけど。
*5:自分の環境では既に前のバージョンに戻す手立てが無くなってしまっているので(T_T)
*6:新しくするようにしてセットしてしまったんだろうが・・・(--;)
*7:いやぁ世界って狭いわ。あと3人くらいは同じ事で悩んでいた人がいるはず【笑】
コメント