Hi,

below you will find what I wrote down about how I got the "new"
Windows-RubyInstaller with Ruby 1.8.7 + TK8.5 working.

Please feel free to post any comments, corrections, suggestions, ....

A German version follows at the bottom.

Hope it helps somebody,
Axel

------------------------------------------------------------

=3D How I installed and compiled the new Windows-RubyInstaller with
  Ruby 1.8.7 and TK8.5

=3D=3D Requirements

* Important: Use only paths without spaces/blanks
* Internet connection (fast one preferred)
* 7-zip installed [7zi]
* Working Ruby installation, for example in path "c:\Ruby";
  requirements: Ruby 1.8.5 at least (mswin32 or mingw32
implementation
  will work) -- Not cygwin! [rdk]
* Rake 0.7.3 or greater [rdk]; I used 0.8.7.
* Zlib extension and DLL (zlib1.dll) available in the PATH (could be
  in system32 or your Ruby bin directory) [rdk]
* I used Windows-XP (home)
* I had to switch of my anti-virus protection, while rake run

=3D=3D Install TK8.5

* Install TK8.5 from ActiveState.com
  http://www.activestate.com/activetcl/
  (Registration was not necessary.)
  Install to, e.g,  "c:/TCL"

=3D=3D Install RubyInstaller-Sourcen + DevelopperKit + TK8.5

=3D=3D=3D Download

* http://wiki.github.com/oneclick/rubyinstaller
  > Downloads
  > download Development Kit, e.g.:
    z.B. devkit-3.4.5r3-20091110.7z

* http://github.com/oneclick/rubyinstaller
  > on the top, click "download"  save it anywhere, then
  extract the package to, e.g.  c:\RubyInstaller, in a way, that
  directory structure of  c:\RubyInstaller  looks approximately like
  this:
    C:\RubyInstaller\
                    |-- config
                    |-- rake
                    |-- recipes
                    |-- resources
                    `-- <several files>

* Edit "C:\RubyInstaller\config\ruby_installer.rb"
  in order to get Ruby 1.8.7:

  Line: ~56
  old:
    :version =3D> "1.8.6-p383",
  new:
    :version =3D> "1.8.7-p174",

  Line: ~69
  old:
    'ruby-1.8.6-p383.tar.bz2'
  new:
    'ruby-1.8.7-p174.tar.bz2'

* Extract:
  devkit-3.4.5r3-20091110.7z
  to c:\delete_later

* Copy from c:\delete_later:
  "DevKit" and "bin"
  to the directory of the existing ("old") Ruby-installation, e.g.
  C:\Ruby . You will be asked "...really?...". Agree to all. When
  finished, the structure of the "old" Ruby-Directory should look
like
  this:

        |-- bin
        |-- devkit
        |-- include
        |-- lib
        |-- share
        `-- ...

* In file .../devkit/msys/1.0.11/etc/fstab replace "c:\Ruby" by the
  path of the "old" working Ruby-installation
  (In this example, it's c:\Ruby, too.)

  (From:
  http://wiki.github.com/oneclick/rubyinstaller/development-kit)

=3D=3D=3D Compile Ruby 1.8.7

([Ros], [Pac])

* I had to switch of anti-virus protection, otherwise I got strange
  errors from rake.

* Open a new shell and use always _this_ one, because of the
  environment variables, which are going to be set. (If you start a
  new shell, you must set the environment variables again.)

* Set environment variables as follows (they must fit exactly!)
  (The new Ruby will be in  C:\RubyInstaller\sandbox\ruby18_mingw\bin
\
  TCL is in c:\tcl)

    set INCLUDE=3Dc:\tcl\include;%INCLUDE%
    set LIB=3DC:\RubyInstaller\sandbox\ruby18_mingw\lib;c:\tcl\lib;%LIB
%
    set LIBPATH=3DC:\RubyInstaller\sandbox\ruby18_mingw\lib;c:\tcl\bin;c:
\tcl\lib;%LIBPATH%
    set PATH=3DC:\RubyInstaller\sandbox\ruby18_mingw\bin;c:\tcl\bin;%PATH
%
    set RUBYPATH=3DC:\RubyInstaller\sandbox\ruby18_mingw

  If you use a proxy for internet connection:
    set HTTP_PROXY =3D http://<proxy>:<port>
    z.B.: set HTTP_PROXY =3D http://proxy.xyz.com:83

  Change the working directory:
  c:
  cd c:\RubyInstaller

  rake # wait about 30 minutes :)

If rake aborts because of an error:

The following helped on my site:

* Disable Virus protection
* Restart computer, open shell only, no other apps
* reinstall rake
* One file, downloaded by rake, was corrupt; I had to delete it
  manually and restart rake

If everything finished without errors, the new Ruby, including
extensions, should work (but not TK!). The new ruby.exe is in:

C:\RubyInstaller\sandbox\ruby18_mingw\bin\

To check it:
<path_to_the_new_ruby.exe> -v

=3D=3D=3D Compile TK

Set environment variables

BEGIN_LONG_LINE
set PATH=3Dc:\rubyinstaller\sandbox\mingw\bin;c:\rubyinstaller\sandbox
\msys\bin;c:\rubyinstaller\sandbox\msys\usr\local\bin;%PATH%
END_LONG_LINE

From [rif]:
In the shell, change working directory:
cd C:\RubyInstaller\sandbox\ruby_1_8\ext\tk

Then:
ruby extconf.rb --with-tcl-dir=3DC:/Tcl --with-tk-dir=3DC:/Tcl
make install
cd tkutil
ruby extconf.rb
make install

Now, on my site  Ruby 1.8.7 + TK8.5 was working.

For checking, you can write and run the following script:

  require 'tk'
  p Tk::TK_PATCHLEVEL

this shall return "...8.5. ...".

If not: Did you run the script with the _new_ Ruby?

=3D=3D Rake

The rake tasks available:
rake check      # Run tests for the interpreter in the sandbox.
rake clean      # Remove any temporary products.
rake clobber    # Remove any generated file.
rake compile    # Compile the interpreter.
rake configure  # Run the configure process for the interpreter.
rake download   # Download all components.
rake extract    # Extract all downloaded components.
rake install    # Install the interpreter in the sandbox.
rake prepare    # Prepare the freshly extracted components.

clean will remove the sandbox and clobber will remove all the
downloaded files.

The step sequence is:

download, extract, prepare, configure, compile, install, check

you will find the installed ruby in sandbox/ruby_mingw

You need to install before check, so the check process use the
sandbox
interpreter instead of the one you're using to build it.

=3D=3D Miscellaneous

* Working/not working gems:
  http://wiki.github.com/oneclick/rubyinstaller/gem-list

* Forum RubyInstaller:
  http://groups.google.com/group/rubyinstaller/topics

* Replacement for Windows-Shell:
  http://sourceforge.net/projects/console/

* Kero's Tk tutorial:
  http://members.chello.nl/k.vangelder/ruby/learntk/

=3D=3D References:

* [Ros] Mark Roseman: "TkDocs",
        http://www.tkdocs.com/tutorial/install.html
* [ryi] Luis Lavena et al.: "rubyinstaller":
        http://wiki.github.com/oneclick/rubyinstaller
* [7zi] http://www.7-zip.org/
* [Pac] Roger Pack, 2009-05-27, in "Programming gone awry"
  http://programming-gone-awry.blogspot.com/2009/05/how-to-setup-comple...
* [rdk] Readme des DevelopmentKits
* [rif] RubyInstaller Forum: http://groups.google.com/group/rubyinstaller,
        2009-12-03: "TCL/TK 8.5 & Ruby 1.8.x with RubyInstaller?

------------------------------------------------------------

German version:

=3D Installation/Kompilieren von neuem Windows-RubyInstaller mit Ruby
1.8.7(!) + TK8.5

=3D=3D Voraussetzungen

* Wichtig: Nur Pfade ohne Leerzeichen verwenden!
* (schnelle) Internetverbindung
* 7-zip installiert [7zi]
* Lauff=E4hige Ruby-Installation, z.B. in c:\Ruby; Anforderungen: Ruby
  1.8.5 at least (mswin32 or mingw32 implementation will work) -- Not
  cygwin! [rdk]
* Rake 0.7.3 or greater [rdk]; I used 0.8.7.
* Zlib extension and DLL (zlib1.dll) available in the PATH (could be
  in system32 or your Ruby bin directory) [rdk]
* Ich verwende Windows-XP
* W=E4hrend rake lief, mu=DFte ich den Virenscanner ausschalten.

=3D=3D TK8.5 installieren

* TK8.5 von ActiveState.com installieren
  http://www.activestate.com/activetcl/
  (Registrierung _nicht_ n=F6tig)
  Installation nach z.B. c:/TCL

=3D=3D RubyInstaller-Sourcen + DevelopperKit installieren

=3D=3D=3D Download

* http://wiki.github.com/oneclick/rubyinstaller
  > Downloads
  > Development Kit downloaden:
    z.B. devkit-3.4.5r3-20091110.7z

* http://github.com/oneclick/rubyinstaller
  > Oben Button "download" anklicken + irgendwo
  speichern und dann nach z.B. c:\RubyInstaller  entpacken, und zwar
  so, da=DF der Inhalt von c:\RubyInstaller etwa so aussieht:
    C:\RubyInstaller\
                    |-- config
                    |-- rake
                    |-- recipes
                    |-- resources
                    `-- <diverse Dateien>

* Editieren "C:\RubyInstaller\config\ruby_installer.rb"
  (um Ruby 1.8.7 zu bekommen):

  Zeile: ~56
  alt:
    :version =3D> "1.8.6-p383",
  neu:
    :version =3D> "1.8.7-p174",

  Zeile: ~69
  alt:
    'ruby-1.8.6-p383.tar.bz2'
  neu:
    'ruby-1.8.7-p174.tar.bz2'

* Entpacken:
  devkit-3.4.5r3-20091110.7z
  nach c:\spaeter_loeschen

* Aus c:\spaeter_loeschen kopieren:
  "DevKit" und "bin"
  in das Verzeichnis der existierende Ruby-Installation, z.B. C:\Ruby
  kopieren. Beim Kopieren von "bin" wird gefragt
  "...wirklich?"; das mit "Ja, alle" best=E4tigen.
  Anschlie=DFend sollte das Rubyverzeichnis so aussehen:

        |-- bin
        |-- devkit
        |-- include
        |-- lib
        |-- share
        `-- ...

* In der Datei  .../devkit/msys/1.0.11/etc/fstab  "c:\Ruby" durch
  den Pfad zur alten, lauff=E4higen Ruby-Installation ersetzen.
  (Ist hier auch c:\Ruby.)

  (Quelle:
  http://wiki.github.com/oneclick/rubyinstaller/development-kit)

=3D=3D=3D Ruby 1.8.7 kompilieren

([Ros], [Pac])

* Ich mu=DFte den Virenscanner abschalten, sonst brachte rake
"mysteri=F6se"
  Fehlermeldungen.

* Shell =F6ffnen und immer in dieser arbeiten, wegen den zu setzenden
  Systemvariablen! (Wenn Shell neu gestartet wird, m=FCssen die
  Systemvariablen erneut gesetzt werden.)

* Systemvariablen setzen (m=FCssen genau stimmen!):
  (Das neue Ruby wird in C:\RubyInstaller\sandbox\ruby18_mingw\bin\
  sein, TCL sei in c:\tcl)

    set INCLUDE=3Dc:\tcl\include;%INCLUDE%
    set LIB=3DC:\RubyInstaller\sandbox\ruby18_mingw\lib;c:\tcl\lib;%LIB%
    set LIBPATH=3DC:\RubyInstaller\sandbox\ruby18_mingw\lib;c:\tcl\bin;c:
\tcl\lib;%LIBPATH%
    set PATH=3DC:\RubyInstaller\sandbox\ruby18_mingw\bin;c:\tcl\bin;%PATH
%
    set RUBYPATH=3DC:\RubyInstaller\sandbox\ruby18_mingw

  Falls Internet =FCber Proxy:
    set HTTP_PROXY =3D http://<proxy>:<port>
    z.B.: set HTTP_PROXY =3D http://proxy.xyz.com:83

  Arbeitsverzeichnis waehlen:
  c:
  cd c:\RubyInstaller

  rake # wait about 30 minutes :)

Wenn rake mit Fehler abbricht:

Folgende Ma=DFnahmen haben jeweils einzeln bei mir mal geholfen:

* Virenscanner ausschalten
* Rechner neu gestartet, nur Shell ge=F6ffnet
* rake neu installiert
* Ein von rake downgeloadetes File gel=F6scht; war wohl fehlerhaft

Wenn alles ohne Fehler durchgelaufen ist, ist jetzt Ruby +
Erweiterungen vom RubyInstaller fertig =3D lauff=E4hig (nicht jedoch
TK!).
Die neue ruby.exe befindet sich in:
C:\RubyInstaller\sandbox\ruby18_mingw\bin\

Ausprobieren:
<Pfad_zur_neuen_ruby.exe> -v

=3D=3D=3D TK kompilieren

Systemvariable setzen

BEGINN_LANGE_ZEILE
set PATH=3Dc:\rubyinstaller\sandbox\mingw\bin;c:\rubyinstaller\sandbox
\msys\bin;c:\rubyinstaller\sandbox\msys\usr\local\bin;%PATH%
ENDE_LANGE_ZEILE

Aus [rif]:
In der Shell, Arbeitsverzeichnis wechseln:
cd C:\RubyInstaller\sandbox\ruby_1_8\ext\tk

Dann:
ruby extconf.rb --with-tcl-dir=3DC:/Tcl --with-tk-dir=3DC:/Tcl
make install
cd tkutil
ruby extconf.rb
make install

Nun lief bei mir Ruby 1.8.7 + TK8.5.

Ausprobieren:

Skript schreiben und starten:
require 'tk'
p Tk::TK_PATCHLEVEL

mu=DF "...8.5. ..." liefern.

Wenn nicht: Ist das Skript mit dem _neuen_ Ruby gelaufen?

=3D=3D Rake

The rake tasks available:
rake check      # Run tests for the interpreter in the sandbox.
rake clean      # Remove any temporary products.
rake clobber    # Remove any generated file.
rake compile    # Compile the interpreter.
rake configure  # Run the configure process for the interpreter.
rake download   # Download all components.
rake extract    # Extract all downloaded components.
rake install    # Install the interpreter in the sandbox.
rake prepare    # Prepare the freshly extracted components.

clean will remove the sandbox and clobber will remove all the
downloaded files.

The step sequence is:

download, extract, prepare, configure, compile, install, check

you will find the installed ruby in sandbox/ruby_mingw

You need to install before check, so the check process use the
sandbox
interpreter instead of the one you're using to build it.

=3D=3D Sonstiges

* Gems, die laufen / nicht laufen:
  http://wiki.github.com/oneclick/rubyinstaller/gem-list

* Forum RubyInstaller:
  http://groups.google.com/group/rubyinstaller/topics

* Ersatz f=FCr Windows-Shell:
  http://sourceforge.net/projects/console/

* Kero's Tk tutorial:
  http://members.chello.nl/k.vangelder/ruby/learntk/

=3D=3D Referenzen:

* [Ros] Mark Roseman: "TkDocs",
        http://www.tkdocs.com/tutorial/install.html
* [ryi] Luis Lavena et al.: "rubyinstaller":
        http://wiki.github.com/oneclick/rubyinstaller
* [7zi] http://www.7-zip.org/
* [Pac] Roger Pack, 2009-05-27, in "Programming gone awry"
  http://programming-gone-awry.blogspot.com/2009/05/how-to-setup-comple...
* [rdk] Readme des DevelopmentKits
* [rif] RubyInstaller Forum: http://groups.google.com/group/rubyinstaller
        2009-12-03: "TCL/TK 8.5 & Ruby 1.8.x with RubyInstaller?