1.8.0-preview7 (bccwin32 build) make install problem

Borland build on Win98se.

-p7
make
make test (‘succeeded’)
make install …

MAKE Version 5.2 Copyright © 1987, 2000 Borland
.\miniruby.exe D:/RUBY/SOURCE~1/RUBY-1~6.0-P/BCC32/…/instruby.rb
"–dest-dir=D:/ruby/src_inst" “–make=MAKE” “–mflags=” "–make-flags=l -o "

D:/RUBY/SOURCE~1/RUBY-1~6.0-P/lib/fileutils.rb:385: [BUG] rb_sys_fail() - errno == 0
ruby 1.8.0 (2003-08-01) [i586-bccwin32]

Abnormal program termination

** error 3 ** deleting install

···

##########

(see File.utime line)

def fu_preserve_attr( really, src, dest ) #:nodoc:
unless really
yield src, dest
return
end

st = File.stat(src)
yield src, dest
File.utime st.atime, st.mtime, dest  # <-------### LINE 385
begin
  File.chown st.uid, st.gid, dest
rescue Errno::EPERM
  File.chmod st.mode & 01777, dest   # clear setuid/setgid
else
  File.chmod st.mode, dest
end

end
private :fu_preserve_attr

##########

?? change since -p5 ruby 1.8.0 (2003-07-28) [i586-bccwin32] (which was OK)
Didn’t try -p6

For further details, email may be quickest.

daz

Hi,

“daz” dooby@d10.karoo.co.uk writes:

Borland build on Win98se.

-p7
make
make test (‘succeeded’)
make install …

MAKE Version 5.2 Copyright (c) 1987, 2000 Borland
.\miniruby.exe D:/RUBY/SOURCE~1/RUBY-1~6.0-P/BCC32/…/instruby.rb
“–dest-dir=D:/ruby/src_inst” “–make=MAKE” “–mflags=” "–make-flags=l -o "

D:/RUBY/SOURCE~1/RUBY-1~6.0-P/lib/fileutils.rb:385: [BUG] rb_sys_fail() - errno == 0
ruby 1.8.0 (2003-08-01) [i586-bccwin32]

Abnormal program termination

** error 3 ** deleting install

I cannot reproduce your problem on Windows 2000 Pro.
What’s the result of bellow?

C:> echo foo > foo.txt
C:> ruby -e ‘File.utime Time.now, Time.now, “foo.txt”’

···


eban

… same for -p6 …

MAKE Version 5.2 Copyright © 1987, 2000 Borland
.\miniruby.exe D:/RUBY/SOURCE~1/RUBY-1~7.0-P/BCC32/…/instruby.rb
"–dest-dir=D:/ruby/src_inst" “–make=MAKE” “–mflags=” "–make-flags=l -o "

D:/RUBY/SOURCE~1/RUBY-1~7.0-P/lib/fileutils.rb:385: [BUG] rb_sys_fail() - errno == 0
ruby 1.8.0 (2003-07-31) [i586-bccwin32]

Abnormal program termination

** error 3 ** deleting install

daz

I’m getting the error with every bcc32 Ruby
(including ones which installed without a problem).

C:\WINDOWS>D:\ruby\SOURCE_CODE\ruby-1.8.0-2003.06.20\bccwin32\ruby.exe
-v -e ‘File.utime( Time.now, Time.now, “foo.txt” )’
ruby 1.8.0 (2003-06-20) [i386-bccwin32]
-e:1: [BUG] rb_sys_fail() - errno == 0
ruby 1.8.0 (2003-06-20) [i386-bccwin32]

C:\WINDOWS>D:\ruby\SOURCE_CODE\ruby-1.8.0-p7\bccwin32\ruby.exe -v -e
‘File.utime( Time.now, Time.now, “foo.txt” )’
ruby 1.8.0 (2003-08-01) [i586-bccwin32]
-e:1: [BUG] rb_sys_fail() - errno == 0
ruby 1.8.0 (2003-08-01) [i586-bccwin32]

mswin binaries are OK :

C:\WINDOWS>D:\ruby\bin\ruby.exe -v -e ‘File.utime( Time.now, Time.now, “foo.txt” )’
ruby 1.8.0 (2003-05-15) [i386-mswin32]
1

···

“WATANABE Hirofumi” eban@os.rim.or.jp wrote:

Hi,

“daz” dooby@d10.karoo.co.uk writes:

MAKE Version 5.2 Copyright (c) 1987, 2000 Borland
.\miniruby.exe D:/RUBY/SOURCE~1/RUBY-1~6.0-P/BCC32/…/instruby.rb
“–dest-dir=D:/ruby/src_inst” “–make=MAKE” “–mflags=” "–make-flags=l -o "

D:/RUBY/SOURCE~1/RUBY-1~6.0-P/lib/fileutils.rb:385: [BUG] rb_sys_fail() - errno == 0
ruby 1.8.0 (2003-08-01) [i586-bccwin32]

I cannot reproduce your problem on Windows 2000 Pro.
What’s the result of bellow?

C:> echo foo > foo.txt
C:> ruby -e ‘File.utime Time.now, Time.now, “foo.txt”’


eban

#-----------

I’ll try a few other things.

daz

Hi,

“daz” dooby@d10.karoo.co.uk writes:

I’m getting the error with every bcc32 Ruby
(including ones which installed without a problem).

C:\WINDOWS>D:\ruby\SOURCE_CODE\ruby-1.8.0-2003.06.20\bccwin32\ruby.exe
-v -e ‘File.utime( Time.now, Time.now, “foo.txt” )’
ruby 1.8.0 (2003-06-20) [i386-bccwin32]
-e:1: [BUG] rb_sys_fail() - errno == 0
ruby 1.8.0 (2003-06-20) [i386-bccwin32]

Hmm, try this patch:

Index: win32/win32.c

···

===================================================================
RCS file: /src/ruby/win32/win32.c,v
retrieving revision 1.93
diff -u -1 -r1.93 win32.c
— win32/win32.c 1 Aug 2003 06:54:28 -0000 1.93
+++ win32/win32.c 2 Aug 2003 10:45:28 -0000
@@ -3190,5 +3190,2 @@
}

  • if (!(stat.st_mode & S_IFDIR) || IsWin95()) {
  • return utime(path, times);
  • }


eban

Works here :-)))

load ‘_ver’
Dir.chdir(‘C:\WINDOWS’)
fname = ‘foo.txt’
p File.atime(fname)
p File.ctime(fname)
p File.mtime(fname)

printf(“\n%o\n\n”, File.stat(fname).mode)
File.utime(Time.now, Time.now, fname)

p File.atime(fname)
p File.ctime(fname)
p File.mtime(fname)

#-> ruby 1.8.0 (2003-08-01) [i586-bccwin32]
#-> Sat Aug 02 00:00:00 2003
#-> Sat Aug 02 08:33:25 2003
#-> Sat Aug 02 12:46:06 2003
#->
#-> 100600
#->
#-> Sat Aug 02 00:00:00 2003
#-> Sat Aug 02 08:33:25 2003
#-> Sat Aug 02 12:48:38 2003

So I’m running again.
(and no need to re-install Windows !:slight_smile:

Thanks Eban,

daz

···

“WATANABE Hirofumi” eban@os.rim.or.jp wrote:

Hi,

Index: win32/win32.c

RCS file: /src/ruby/win32/win32.c,v
retrieving revision 1.93
diff -u -1 -r1.93 win32.c
— win32/win32.c 1 Aug 2003 06:54:28 -0000 1.93
+++ win32/win32.c 2 Aug 2003 10:45:28 -0000
@@ -3190,5 +3190,2 @@
}

  • if (!(stat.st_mode & S_IFDIR) || IsWin95()) {
  • return utime(path, times);
  • }


eban