Hi!
We found a problem using ‘AllInOneRuby’ with Tk-Program on Windows 2000
and XP.
‘Tcl/Tk’ does work, a generated ‘allinoneruby.exe’ works well with a
console
program, but gives an error using a small Tk example.
Code >>>>>
require ‘tk’
root = TkRoot.new{title “My Hello”}
TkLabel.new(root) do
text ‘Hier kommt Otto!’
pack{padx 15; pady 15; side ‘left’}
end
Tk.mainloop
Console Protocol >>>>>
E:\AllInOneRuby>allinoneruby tktest.rb
C:/DOKUME~1/wolfgang/LOKALE~1/Temp/eee.allinoneruby.exe.3/lib/lib4/tk.rb:1102:in
`initiali
ze’: Can’t find a usable init.tcl in the following directories:
(RuntimeError)
C:/DOKUME~1/wolfgang/LOKALE~1/Temp/eee.allinoneruby.exe.3/lib/tcl8.4
C:/DOKUME~1/wolfg
ang/LOKALE~1/Temp/eee.allinoneruby.exe.3/lib/tcl8.4
C:/DOKUME~1/wolfgang/LOKALE~1/Temp/lib
/tcl8.4
C:/DOKUME~1/wolfgang/LOKALE~1/Temp/eee.allinoneruby.exe.3/library
C:/DOKUME~1/wolf
gang/LOKALE~1/Temp/library
C:/DOKUME~1/wolfgang/LOKALE~1/Temp/tcl8.4.13/library
C:/DOKUME~
1/wolfgang/LOKALE~1/tcl8.4.13/library
This probably means that Tcl wasn’t installed prop from
C:/DOKUME~1/wolfgang/LOKALE~1
/Temp/eee.allinoneruby.exe.3/lib/lib4/tk.rb:1102:in `new’
from
C:/DOKUME~1/wolfgang/LOKALE~1/Temp/eee.allinoneruby.exe.3/lib/lib4/tk.rb:1102
from E:/AllInOneRuby/tktest.rb:1:in `require'
from E:/AllInOneRuby/tktest.rb:1
from
C:\DOKUME~1\wolfgang\LOKALE~1\Temp\eee.allinoneruby.exe.3\bootstrap.rb:50:in
`load’
from
C:\DOKUME~1\wolfgang\LOKALE~1\Temp\eee.allinoneruby.exe.3\bootstrap.rb:50
End of Console Protocol >>>>>
On my Windows 2000 installation the error is the same when
'allinoneruby.exe’was
generated with ‘–site’. An other person has a different error message
when
using ‘–site’ with the contents, that ‘GetModuleHandleExA’ is not found
in
‘Kernel32.dll’
The programs work well when together with ‘RubyScript2Exe’, but on my
environment (Windows 2000) it is always necessary to use
‘–rubyscript2exe-tk’
otherwise the same error will occur.
What happens there?
Wolfgang Nádasi-Donner (WoNáDo)