W
Wolfgang Nádasi-Donner
Dear Rubyists!
I cannot create Ruby 1.9 on Windows for snapshots starting January 2007. For
older snapshots I have a working envoironment and procedure. First I recognized,
that for newer snapshots a Ruby installation is necessary. After some
discussions and help proposals in the german ruby forum I came up to a modified
version with old toolchain, because the newer tools failed with severe problems.
In Detail - I set up the Environment in the following way:
* MinGW-3.1.0-1.exe to "F:\MinGW"
* MSYS-1.0.11-2004.04.30-1.exe to "F:\msys"
* msysDTK-1.0.1.exe to "F:\msys"
* bison-2.0-MSYS.tar.gz, msys-autoconf-2.59.tar.bz2,msys-automake-1.8.2.tar.bz2
to "F:\msys" copied
* start "MSYS prompt" for following commands:
o cd /
o tar -jxf msys-automake-1.8.2.tar.bz2
o tar -jxf msys-autoconf-2.59.tar.bz2
o tar -zxf bison-2.0-MSYS.tar.gz
* extract "ruby-1.8.6-i386-mswin32.zip" to "F:\msys\home\wolfgang\ruby-1.8.6"
This was done without any problem. afterwards I tried to build an experimental
Ruby 1.9 version using the following initial sequence:
* Copy actual Ruby snapshot "snapshot.tar.gz" to "F:\msys\home\wolfgang"
* start "MSYS prompt" for following commands:
o tar xzvf snapshot.tar.gz
o cd ruby
o If there is no "configure", or "configure" is older than "configure.in":
-> autoconf
o mkdir build
o cd build
o ../configure --with-baseruby=/home/wolfgang/ruby-1.8.6/bin/ruby.exe
--prefix=/ruby19 --program-suffix=19
o make
During execution of "make" the following error occurs:
.... several lines ...
gcc -g -O2 -I. -I.. -DRUBY_EXPORT -c ../main.c
gcc -g -O2 -I. -I.. -DRUBY_EXPORT -c ../dmydln.c
gcc -g -O2 -L. -Wl,--stack,0x00200000 main.o dmydln.o
libmsvcrt-ruby1919-static.a -lshell32 -lws2_32 -o miniruby.exe
.../mkconfig.rb:7:in `method_missing': undefined method `dirname' for
false:FalseClass (NoMethodError)
from ../mkconfig.rb:7:in `<main>'
make: *** [.rbconfig.time] Error 1
The file "mkconf.rb" contains at the beginning:
#!./miniruby -s
# avoid warnings with -d.
$install_name ||= nil
$so_name ||= nil
srcdir = File.dirname(__FILE__) # <= Line 7 !
$:.replace [srcdir+"/lib", "."]
So - this means, because "File" belongs to class "FalseClass", it has the value
"false".
What happend there???????
Wolfgang Nádasi-Donner
I cannot create Ruby 1.9 on Windows for snapshots starting January 2007. For
older snapshots I have a working envoironment and procedure. First I recognized,
that for newer snapshots a Ruby installation is necessary. After some
discussions and help proposals in the german ruby forum I came up to a modified
version with old toolchain, because the newer tools failed with severe problems.
In Detail - I set up the Environment in the following way:
* MinGW-3.1.0-1.exe to "F:\MinGW"
* MSYS-1.0.11-2004.04.30-1.exe to "F:\msys"
* msysDTK-1.0.1.exe to "F:\msys"
* bison-2.0-MSYS.tar.gz, msys-autoconf-2.59.tar.bz2,msys-automake-1.8.2.tar.bz2
to "F:\msys" copied
* start "MSYS prompt" for following commands:
o cd /
o tar -jxf msys-automake-1.8.2.tar.bz2
o tar -jxf msys-autoconf-2.59.tar.bz2
o tar -zxf bison-2.0-MSYS.tar.gz
* extract "ruby-1.8.6-i386-mswin32.zip" to "F:\msys\home\wolfgang\ruby-1.8.6"
This was done without any problem. afterwards I tried to build an experimental
Ruby 1.9 version using the following initial sequence:
* Copy actual Ruby snapshot "snapshot.tar.gz" to "F:\msys\home\wolfgang"
* start "MSYS prompt" for following commands:
o tar xzvf snapshot.tar.gz
o cd ruby
o If there is no "configure", or "configure" is older than "configure.in":
-> autoconf
o mkdir build
o cd build
o ../configure --with-baseruby=/home/wolfgang/ruby-1.8.6/bin/ruby.exe
--prefix=/ruby19 --program-suffix=19
o make
During execution of "make" the following error occurs:
.... several lines ...
gcc -g -O2 -I. -I.. -DRUBY_EXPORT -c ../main.c
gcc -g -O2 -I. -I.. -DRUBY_EXPORT -c ../dmydln.c
gcc -g -O2 -L. -Wl,--stack,0x00200000 main.o dmydln.o
libmsvcrt-ruby1919-static.a -lshell32 -lws2_32 -o miniruby.exe
.../mkconfig.rb:7:in `method_missing': undefined method `dirname' for
false:FalseClass (NoMethodError)
from ../mkconfig.rb:7:in `<main>'
make: *** [.rbconfig.time] Error 1
The file "mkconf.rb" contains at the beginning:
#!./miniruby -s
# avoid warnings with -d.
$install_name ||= nil
$so_name ||= nil
srcdir = File.dirname(__FILE__) # <= Line 7 !
$:.replace [srcdir+"/lib", "."]
So - this means, because "File" belongs to class "FalseClass", it has the value
"false".
What happend there???????
Wolfgang Nádasi-Donner