我正在尝试使用OCRA将一个Ruby程序打包成一个.exe。当我试图使用它为我的程序创建可执行文件时,它在运行时抛出了一个奇怪的错误。我尝试了一个简单的Hello程序,这个错误持续存在。
我在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注意:这不是具有相同错误信息的这个人的问题的副本。我无法在生成EXE的计算机上运行EXE,而提出链接问题的人在其他计算机上运行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专业64位。
我还尝试在没有--非dep运行标志的情况下运行它,在我的C:驱动器上运行exe而不是H:,并使用本地管理员权限在命令提示符下运行它。都给出了相同的错误信息。
我该怎么解决这个问题?
发布于 2017-06-08 21:53:21
我能够通过卸载Ruby并通过RubyInstaller安装一个旧版本(即2.3.3)来解决这个问题。2.4.1和ocra似乎有问题。我在几台新电脑上进行了测试,而2.4.1甚至在新安装时也无法工作。
发布于 2017-07-05 09:01:14
现在有一个更新的Ocra1.3.9来解决这个问题。
https://stackoverflow.com/questions/44417611
复制相似问题