无法运行使用ocra创建的exes - 致命错误:无法创建进程

时间:2017-06-07 15:59:09

标签: ruby ocra

我正在尝试使用OCRA将Ruby程序打包为Windows计算机上的.exe。当我尝试使用它来为我的程序创建可执行文件时,它在运行时抛出了一个奇怪的错误。我尝试使用简单的Hello World程序,但错误仍然存​​在。

我在helloworld.rb中添加了以下内容:

puts "Hello, World!"

然后,我通过OCRA运行文件:

H:\ocra test>ocra --no-dep-run helloworld.rb
=== Detected gem did_you_mean-1.1.0 (loaded, files)
===     14 files, 32780 bytes
=== Detected gem ocra-1.3.8 (loaded, files)
===     5 files, 291748 bytes
=== Including 59 encoding support files (3918740 bytes, use --no-enc to exclude)

=== Building helloworld.exe
=== Adding user-supplied source files
=== Adding ruby executable ruby.exe
=== Adding detected DLL C:/Ruby24-x64/bin/ruby_builtin_dlls/libgmp-10.dll
=== Adding detected DLL C:/Ruby24-x64/bin/ruby_builtin_dlls/libffi-6.dll
=== Adding library files
=== Compressing 7908093 bytes
=== Finished building helloworld.exe (1919669 bytes)

但是,当我尝试运行此可执行文件时,我收到以下消息:

H:\ocra test>helloworld.exe
FATAL ERROR: Failed to create process (C:\Users\[username]\AppData\Local\Temp\ocr9C6D.tmp\bin\ruby.exe): 14001

注意:这不是this person's question的副本,它具有相同的错误消息。我无法在生成它的计算机上运行EXE,而询问链接问题的人在其他计算机上运行它时遇到问题。

以下是Ruby和OCRA的版本,我相信这两个版本都是最新版本:

H:\ocra test>ruby --version
ruby 2.4.1p111 (2017-03-22 revision 58053) [x64-mingw32]
H:\ocra test>ocra --version
Ocra 1.3.8

我使用的是Windows 7 Professional 64位。

我也尝试在没有--no-dep-run标志的情况下运行它,在我的C:驱动器而不是H:上运行exe,并在具有本地管理员权限的命令提示符下运行它。所有人都给出了相同的错误信息。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

现在有一个更新的Ocra 1.3.9修复了这个问题。

答案 1 :(得分:1)

我能够通过卸载Ruby并通过RubyInstaller安装旧版本(即2.3.3)来解决这个问题。 2.4.1和ocra似乎存在问题。我在几台新计算机上进行了测试,2.4.1即使重新安装也无法正常工作。