わたなべです. Kazuhiro NISHIYAMA <zn / mbf.nifty.com> writes: :Cygwin版やmingw版でDBMやGDBMがエラーになります。 : :C:\tmp>ruby -vrdbm -e "DBM.open('a')" :ruby 1.6.3 (2001-04-03) [i386-cygwin] :-e:1:in `open': Permission denied - "a" (Errno::EACCES) : from -e:1 : :C:\tmp>ruby_ -vrdbm -e "DBM.open 'a'" :ruby 1.6.3 (2001-04-03) [i386-mingw32] :-e:1:in `open': No such file or directory - "a" (Errno::ENOENT) : from -e:1 移植されてるGNU dbmのndbm互換がWinNT/2kしかサポートしてないようです。 逃げを考えます。 :C:\tmp>ruby -vrgdbm -e "GDBM.open 'a'" :ruby 1.6.3 (2001-04-03) [i386-cygwin] :-e:1:in `open': Permission denied - "a" (Errno::EACCES) : from -e:1 これは再現しません。 :C:\tmp>ruby_ -vrgdbm -e "GDBM.open 'a'" :ruby 1.6.3 (2001-04-03) [i386-mingw32] :-e:1:in `open': Permission denied - "a" (Errno::EACCES) : from -e:1 こっちは -e:1:in `open': No such file or directory - "a" (Errno::ENOENT) だったら再現したけど、ひょっとしたらerrnoに正しい値をセット してない可能性もあるので調べてみます。 -- わたなべひろふみ