使用ocra和sqlite生成INNOSetup安装程序错误



我正在尝试将ruby + qtruby + sqlite3应用程序与ocra打包到windows安装程序中。

一切都很顺利,直到我添加了连接到数据库的代码。

下面是代码片段:
require 'Qt4'
require 'rubygems'
require 'active_record'
dbconfig = YAML::load(File.open('src/config/database.yml'))['development']
ActiveRecord::Base.establish_connection(
:adapter => dbconfig['adapter'],
:database => dbconfig['database']
)
class Category < ActiveRecord::Base
end
Category.find(:all)
exit if Object.const_defined?(:Ocra)
...

这段代码运行后,ocra能够创建单个可执行文件,但如果我尝试创建一个安装文件,我得到的错误是:

=== Running InnoSetup compiler ISCC                                                                                       
Error in D:WorkspacesRubyTestGuiocratemp.iss: Impossibile accedere al file. Il file Þ utilizzato da un altro processo.
Compile aborted.                                                                                                          
ERROR: InnoSetup installer creation failed: ISCC failed to run. Is the InnoSetup directory in your PATH?                  
rake aborted!                                                                                                             

错误是意大利语,抱歉,但它翻译为"无法访问文件"。

这是生成安装程序的命令:

ocra --chdir-first --no-lzma --no-autoload --innosetup testGui.iss gui.rb src/db/development.db src/config/database.yml 

如果我注释掉连接到sqlite的代码块,安装程序就会正确创建,我可以在测试机器上正确使用。如果我移动exit If…在连接到sqlite之前阻塞,结果可执行文件/安装程序缺乏sqlite库,并且在目标机器上我无法执行它。

我认为这个错误与未关闭的sqlite连接有关,但也许我错过了其他东西。

谢谢

我知道这是旧的,但我刚刚有同样的错误。我一关掉我正在运行的杀毒软件,一切就正常了。我的安装文件已经创建并正常运行。

相关内容

  • 没有找到相关文章