Ruby Cannot Find SQLite3 Driver on Windows

Ruby cannot find sqlite3 driver on windows

The problem put simply is that sqlite3-ruby 1.2.3 is not compatible with ruby 1.9. This is caused because ruby 1.9 does not use .dll files for c libraries it uses .so files instead. Additionally, since sqlite3_api.dll is written against msvcrt-ruby18.dll. This means that it specifically only will support ruby 1.8.*.

The good news is that there is a fat binary version that will support both ruby 1.8 and ruby 1.9. Uninstalling all former versions of sqlite3-ruby and then installing this one. (You may have to manually delete some versions the gem after uninstalling.) in order to install it use

install sqlite3-ruby --source http://gems.rubyinstaller.org

for more information see this website

Sqlite driver not found on windows

I've been having the same problem.

sqlite3-ruby version 1.2.3 seems to be incompatible with Ruby 1.9. Version 1.2.4 is (maybe) compatible but a windows binary version was never released, and the maintainer has announced that he's given up on building and releasing for windows.

According to this post someone is working on a fix, but it's not there yet.

So this is going to be an unhelpful answer as so far none of my researches have found a fix that's available now. The options for getting a windows Ruby/Rails development setup today seem to be either to switch to MySQL for the development database, or move back to Ruby 1.8.7.

gem install sqlite3 on Windows errors out with missing function dlopen

my issue fixed after running this command

ridk exec pacman -S mingw-w64-x86_64-dlfcn

before running gem install sqlite3


Reference: https://github.com/sparklemotion/sqlite3-ruby/issues/248

sqlite3 not found error in ruby on rails

sqlite3 has been the default database since Rails 2.0.2 - previously it was MySQL. Database configuration is found in config/database.yml and you can change it if you want.

Even with no models, rails attempts to make sure the actual DBMS specified in database.yml is there for use.

The gems you installed are "drivers" to let you talk to the database through ruby (similar to JDBC drivers in Java or an ADO.NET driver for .NET) - not the actual DBMS. (sqlite3-ruby is the right one - I'm not sure why it displays all those "no definition for..." lines - it does for me too, but it works. Perhaps someone else knows why...)

The .dll is the DBMS. SQLite3 is a very lightweight database - dropping the .dll in the path is really all you need to do. Placing it in the ruby/bin directory is a common practice for development machines.

ruby on rails SQLite problem

Try following the steps in this article, in particular they note that a better location for the sqlite dll is in the ruby bin directory.

Placing it there may also help get sorted what version is loaded.

Failing that, I'd do a gem uninstall sqlite3-ruby and then reinstall it.

How to find out version of sqlite3 in rails 3 app under windows?

bundle show sqlite3 will show you the version of the gem you are using.

Can't make sqlite3 work on Ruby on Rails

To everybody who's going to have this problem. What I did to fix it was uninstall everything. I though that maybe since I had an updated version of everything, something might not be working properly, maybe some dependencies were wrongly addressed. So I reinstalled everything following this:

Rails Installer Website

Which will make you install everything you need to run your first RoR app. It might not be up to date but it works just fine. Sqlite3 works perfectly now and that was what I needed. I might try to update every single program later, right now I just need something that is actually working. Thanks to everybody else who tried to help.

Cannot use sqlite3 with ruby 1.9.2 and rails 3.0.0 on windows

Well, I know it is bad style, but I found one solution for me. I don't know why it did not work in the first place ...

The solution for me was:

  1. Install the latest version of sqlite3-ruby (currently version 1.3.1)

  2. That installation gives you (as text in the DOS shell) the information where to copy the correct sqlite3.dll. Ensure to copy that one in the bin directory of Ruby (or anywhere else on your path).

  3. Ensure that your Gemfile (app-root/Gemfile) list the requirement:

    gem 'sqlite3-ruby', ">= 1.3.1", :require => 'sqlite3'

  4. Do a 'rake db:migrate' now (which should work then).

I did not find the reason why Rails 3.0.0 insisted to install version sqlite3-ruby 1.2.5, but with that version installed, sqlite3 did not work for me.



Related Topics



Leave a reply



Submit