Исполняемый файл Ruby не запускается на Win10 и Win7 - PullRequest
0 голосов
/ 04 мая 2018

Я написал приложение ruby ​​с Tk, и все в порядке, без ошибок или что-то подобное. Итак, я сделал exe-файл с Ocra, и у меня были некоторые проблемы с самого начала, но затем я решил, что Ocra сделал exe-файл без ошибок, а также, когда он позволил вам попробовать ваш скрипт перед его сборкой, проблем не было.

Но потом, когда я дважды щелкнул exe, ничего. Я ждал, и ничего .. Запустите его от имени администратора и ничего больше ..

Я также пытался написать простой сценарий, как в «Hello World», но всегда с одной и той же проблемой:

Нет ошибок, появляющихся на экране или в cmd, но все равно ничего не происходит, когда я запускаю исполняемый файл Ocra ruby ​​с TK

Это вывод ocra:

G:\WinRuby\efdsk>ocra efdsk.rb --windows --no-autoload --debug                                                          
=== Loading script to check dependencies                                                                                
=== Detected gem did_you_mean-1.2.0 (loaded, files)                                                                     
===     19 files, 38722 bytes                                                                                           
=== Detected gem ocra-1.3.10 (loaded, files)                                                                            
===     5 files, 210830 bytes                                                                                           
=== Detected gem tk-0.2.0 (loaded, files)                                                                               
===     419 files, 4623427 bytes                                                                                        
=== Including 59 encoding support files (3909616 bytes, use --no-enc to exclude)                                        
=== Building efdsk-debug.exe                                                                                            
=== Enabling debug mode in executable                                                                                   
=== Adding user-supplied source files                                                                                   
=== Adding ruby executable rubyw.exe                                                                                    
=== Adding detected DLL C:/Ruby25-x64/bin/ruby_builtin_dlls/libgmp-10.dll                                               
=== Adding detected DLL C:/Ruby25-x64/bin/ruby_builtin_dlls/libffi-6.dll                                                
=== Adding detected DLL C:/Ruby25-x64/msys64/mingw64/bin/tcl86.dll                                                      
=== Adding detected DLL C:/Ruby25-x64/msys64/mingw64/bin/tk86.dll                                                       
=== Adding detected DLL C:/Ruby25-x64/bin/ruby_builtin_dlls/zlib1.dll                                                   
=== Adding detected DLL C:/Ruby25-x64/msys64/mingw64/lib/reg1.3/tclreg13.dll                                            
=== Adding external manifest C:/Ruby25- 
x64/bin/ruby_builtin_dlls/ruby_builtin_dlls.manifest                             
=== Adding library files                                                                                                
=== Compressing 16872997 bytes                                                                                                                                                                                                                  
LZMA 4.65 : Igor Pavlov : Public domain : 2009-02-03                                                                    
=== Finished building efdsk-debug.exe (4029675 bytes) 

И это вывод, когда я пытаюсь запустить exe-файл

G:\WinRuby\efdsk>start efdsk.exe

G:\WinRuby\efdsk> 

Также такой простой скрипт не запустится:

require 'tk'
require 'tkextlib/tile'

root = TkRoot.new() 
button = Tk::Tile::TButton.new(root) {text "Hello World"}.grid

Tk.mainloop()

Моя рубиновая версия:

ruby 2.5.1p57 (2018-03-29 revision 63029) [x64-mingw32]

1 Ответ

0 голосов
/ 05 мая 2018

Я решил установить эту версию ruby:

G:\WinRuby\efdsk>ruby -v                                                                                                
ruby 2.3.3p222 (2016-11-21 revision 56859) [x64-mingw32]

И эту команду я использовал для ocra:

ocra efdsk.rb --windows C:\Ruby23-x64\lib\tcltk\ --no-autoload --add-all-core

Теперь исполняемый файл будет работать нормально после двойного щелчка по нему.

...