无法加载此类文件-Windows上的do_sqlite3 / 2.0 / do_sqlite3 [英] Cannot load such file -- do_sqlite3/2.0/do_sqlite3 on windows

查看:94
本文介绍了无法加载此类文件-Windows上的do_sqlite3 / 2.0 / do_sqlite3的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

据我所知,我已经正确安装了所有程序,但是仍然无法运行程序。明确地说,这是在Linux上编写的,现在我正尝试在Windows计算机上运行它。



我有以下宝石列表:

  ***本地*** *** 

可寻址(2.2.7,2.2.6)
akami(1.2.2)
反向端口(3.6.0)
bcrypt(3.1.7 x64-mingw32)
bcrypt-ruby(3.1.5 x64-mingw32)
bigdecimal( 1.2.0)
生成器(3.2.2,3.1.4)
捆绑软件(0.0.1)
捆绑软件(1.6.2)
守护程序(1.1.9)
data_mapper(1.2.0)
data_objects(0.10.14)
dm聚合(1.2.0)
dm约束(1.2.0)
dm-core( 1.2.0)
dm-do-adapter(1.2.0)
dm-migrations(1.2.0)
dm-serializer(1.2.2)
dm-sqlite-适配器(1.2.0)
dm时间戳记(1.2.0)
dm事务(1.2.0)
dm类型(1.2.2)
dm验证( 1.2.0)
do_sqlite3(0.10.14)
加密器(1.3.0)
fastcsv(1.5.5)
gyoku(1.1.1,1.1.0)
haml(4.0.5)
httpi(2.1.0)
io-console(0.4.2)
json(1.8.1,1.7.7)
json_pure( 1.8。 1)
邮件(2.5.4)
哑剧类型(1.25.1)
mini_portile(0.5.3,0.5.2)
minitest(4.3.2)
multi_json(1.9.2)
nokogiri(1.6.2.rc2 x64-mingw32)
nori(2.4.0)
多语言(0.3.3)
小马(1.6 .2)
心理(2.0.0)
彪马(2.8.2)
机架(1.5.2)
机架保护(1.5.2)
机架-test(0.6.2)
佣金(0.9.6)
rdoc(4.0.0)
ruby​​ntlm(0.3.4)
savon(2.5.0)
sinatra(1.4.4)
sinatra-contrib(1.4.2)
sinatra-static-assets(1.0.3)
sqlite3(1.3.9 x64-mingw32)
stringex(1.5.1)
测试单位(2.0.0.0)
倾斜度(1.4.1)
树梢(1.4.15)
uuidtools(2.1.4)
wasabi(3.3.0)

sqlite3是从源代码编译的,并使用<$ c $安装c> gem install sqlite3---with-sqlite3-include = c:/ sources / sqlite3 --with-sqlite3-lib = c:/sources/sqlite3/.libs 成功。 p>

红宝石主文件中所需的宝石为:

  require'sinatra '
require'sin atra / static_assets'
需要'sinatra / cookies'
需要'haml'
需要'savon'
需要'encryptor'
需要'pony'
需要'open-uri'
需要'json'
需要'data_mapper'

我应该注意,在 irb 内部运行所有这些都需要返回true且没有错误。当运行 ruby​​ main.rb 时,我遇到了:

  c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:126:在'require'中:无法加载此类文件-do_sqlite3 / 2.0 / do_sqlite3(LoadError)
from c :/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:126:在'require'
from c:/Ruby200-x64/lib/ruby/gems/2.0.0/ gems / backports-3.6.0 / lib / backports / tools.rb:343:来自c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/do_sqlite3-0.10的`require_with_backports'
中。 14 / lib / do_sqlite3.rb:32:在' from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/do_sqlite3-0.10 .14 / lib / do_sqlite3.rb:27:在`< top(必需)>'
来自c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb: 135:在`require'
from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:135:在`recue in require'
from c:/ Ruby200-x64 / lib / ruby​​ / 2.0.0 / ruby​​gems / core_ext / ke rnel_require.rb:144:在`require'
from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/backports-3.6.0/lib/backports/tools.rb:343:在来自c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm-sqlite-adapter-1.2.0/lib/dm-sqlite-adapter/adapter.rb的`require_with_backports'
中: 1:在`< top(必需)>'中
来自c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:73:在`require'$ b $中b来自c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:73:in`require'
来自c:/Ruby200-x64/lib/ruby/gems/2.0 .0 / gems / backports-3.6.0 / lib / backports / tools.rb:343:在来自c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm的`require_with_backports'
中-sqlite-adapter-1.2.0 / lib / dm-sqlite-adapter.rb:1:来自c:/Ruby200-x64/lib/ruby/2.0中的'< top(必需)>'
。 0 / ruby​​gems / core_ext / kernel_require.rb:135:in`require'
from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:135:in`rescue in需要'
fr om c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:144:在`require'
from c:/Ruby200-x64/lib/ruby/gems/2.0中。 0 / gems / backports-3.6.0 / lib / backports / tools.rb:343:在`require_with_backports'
from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm- core-1.2.0 / lib / dm-core / adapters.rb:163:in`load_adapter'
from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm-core- 1.2.0 / lib / dm-core / adapters.rb:133:位于`adapter_class'
中,来自c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm-core-1.2。 0 / lib / dm-core / adapters.rb:13:来自c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm-core-1.2.0/ lib / dm-core.rb:230:在`setup'
from rxsite.rb:14:in在'< main>'

通常,我会按照到目前为止到目前为止尝试解决的步骤进行操作,但实际上我不知道从哪里开始。我只能认为这与我安装sqlite3的方式有关。

解决方案

通过删除x64 ruby​​并安装x86 ruby​​修复了此问题。



使用64位版本似乎产生了很多问题。


As far as I can tell, I've installed everything correctly, however I still can't run my program. To be clear, this was written on linux, and I'm now trying to run it on a windows machine.

I have the following gem list:

*** LOCAL GEMS ***

addressable (2.2.7, 2.2.6)
akami (1.2.2)
backports (3.6.0)
bcrypt (3.1.7 x64-mingw32)
bcrypt-ruby (3.1.5 x64-mingw32)
bigdecimal (1.2.0)
builder (3.2.2, 3.1.4)
bundle (0.0.1)
bundler (1.6.2)
daemons (1.1.9)
data_mapper (1.2.0)
data_objects (0.10.14)
dm-aggregates (1.2.0)
dm-constraints (1.2.0)
dm-core (1.2.0)
dm-do-adapter (1.2.0)
dm-migrations (1.2.0)
dm-serializer (1.2.2)
dm-sqlite-adapter (1.2.0)
dm-timestamps (1.2.0)
dm-transactions (1.2.0)
dm-types (1.2.2)
dm-validations (1.2.0)
do_sqlite3 (0.10.14)
encryptor (1.3.0)
fastercsv (1.5.5)
gyoku (1.1.1, 1.1.0)
haml (4.0.5)
httpi (2.1.0)
io-console (0.4.2)
json (1.8.1, 1.7.7)
json_pure (1.8.1)
mail (2.5.4)
mime-types (1.25.1)
mini_portile (0.5.3, 0.5.2)
minitest (4.3.2)
multi_json (1.9.2)
nokogiri (1.6.2.rc2 x64-mingw32)
nori (2.4.0)
polyglot (0.3.3)
pony (1.6.2)
psych (2.0.0)
puma (2.8.2)
rack (1.5.2)
rack-protection (1.5.2)
rack-test (0.6.2)
rake (0.9.6)
rdoc (4.0.0)
rubyntlm (0.3.4)
savon (2.5.0)
sinatra (1.4.4)
sinatra-contrib (1.4.2)
sinatra-static-assets (1.0.3)
sqlite3 (1.3.9 x64-mingw32)
stringex (1.5.1)
test-unit (2.0.0.0)
tilt (1.4.1)
treetop (1.4.15)
uuidtools (2.1.4)
wasabi (3.3.0)

sqlite3 was compiled from source, and installed using gem install sqlite3 -- --with-sqlite3-include=c:/sources/sqlite3 --with-sqlite3-lib=c:/sources/sqlite3/.libs to success.

The required gems in the main ruby file are:

require 'sinatra'
require 'sinatra/static_assets'
require 'sinatra/cookies'
require 'haml'
require 'savon'
require 'encryptor'
require 'pony'
require 'open-uri'
require 'json'
require 'data_mapper'

I should note running each of those requires inside irb all return true with no errors. When running ruby main.rb, I'm met with:

c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:126:in `require': cannot load such file -- do_sqlite3/2.0/do_sqlite3 (LoadError)
        from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:126:in `require'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/backports-3.6.0/lib/backports/tools.rb:343:in `require_with_backports'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/do_sqlite3-0.10.14/lib/do_sqlite3.rb:32:in `rescue in <top (required)>'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/do_sqlite3-0.10.14/lib/do_sqlite3.rb:27:in `<top (required)>'
        from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:135:in `require'
        from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
        from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:144:in `require'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/backports-3.6.0/lib/backports/tools.rb:343:in `require_with_backports'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm-sqlite-adapter-1.2.0/lib/dm-sqlite-adapter/adapter.rb:1:in `<top (required)>'
        from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:73:in `require'
        from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:73:in `require'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/backports-3.6.0/lib/backports/tools.rb:343:in `require_with_backports'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm-sqlite-adapter-1.2.0/lib/dm-sqlite-adapter.rb:1:in `<top (required)>'
        from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:135:in `require'
        from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
        from c:/Ruby200-x64/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:144:in `require'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/backports-3.6.0/lib/backports/tools.rb:343:in `require_with_backports'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm-core-1.2.0/lib/dm-core/adapters.rb:163:in `load_adapter'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm-core-1.2.0/lib/dm-core/adapters.rb:133:in `adapter_class'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm-core-1.2.0/lib/dm-core/adapters.rb:13:in `new'
        from c:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/dm-core-1.2.0/lib/dm-core.rb:230:in `setup'
        from rxsite.rb:14:in `<main>'

Usually I would go through the steps I've tried so far to solve this, but I'm don't actually know where to start with this. I can only assume it's an issue with the way I installed sqlite3

解决方案

Fixed this by removing x64 ruby, and installing x86 ruby.

Seems like a lot of problems stem from using the 64bit version.

这篇关于无法加载此类文件-Windows上的do_sqlite3 / 2.0 / do_sqlite3的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆