Ich bin wirklich neu bei Ruby/Rails, und nachdem ich an diesem Wochenende versucht habe, das Problem selbst zu lösen, versuche ich, hier Rat zu suchen.
Ich habe ein komplettes Ruby/Apache/Passenger-Setup unter FreeBSD erstellt und versuche, Windows als Ruby-Entwicklungsumgebung zu verwenden.
Bisher:
"> rake db: create" sagt mir:
Bitte installieren Sie den sqlite3-Adapter: gem install activerecord-sqlite3-adapter
( Sqlite3 ist nicht Teil des Bundles. Fügen Sie ihn zu Gemfile hinzu.)
das ich kein "Verständnis" habe. Der Versuch, den Activerecord-sqlite3-Adapter zu installieren, gibt mir ein "Konnte keinen gültigen Edelstein finden ..."
"> gem install sqlite3" gibt Folgendes zurück:
Building native extensions. This could take a while...
ERROR: Error installing sqlite3:
ERROR: Failed to build gem native extension.
D:/Development/Ruby200-x64/bin/Ruby.exe extconf.rb
checking for sqlite3.h... *** extconf.rb failed ***
Im Moment stehe ich an einem Punkt fest, an dem ich nicht weiß, in welchem Zustand sich meine Installation von Ruby unter Windows befindet. Ich versuche, das Haupt-Tutorial von Rails zu befolgen, und es gibt keine dieser Probleme an (wahrscheinlich wegen Ruby) unter Windows scheint für viele Menschen ein natürlicher Schmerz zu sein.)
Was vermisse ich?!? Ich versuche gerade, sqlite3 für Ruby unter Windows zu installieren.
Wenn ich ">rais db"
mache, wird die SQLite-Shell dargestellt:
SQLite version 3.7.15.2 2013-01-09 11:53:05
Ähnliche Fragen mit Schritten, die mein Problem nicht lösen: Installieren von SQLite 3.6 unter Windows 7
Obwohl die Frage beantwortet wurde, möchte ich meine Forschung posten, um anderen zu helfen. Ich habe im Internet viele Informationen gefunden, aber als Ruby-Neuling hatte ich es schwer, alles zu verfolgen. Die grundlegende Antwort kommt aus dem folgenden Beitrag https://github.com/luislavena/sqlite3-Ruby/issues/82 mit Anweisungen von "paulwis" zur korrekten Installation von sqlite3 für Ruby 2.0.0-p0 und einige andere Kommentare zu https://github.com/Rails/rails/issues/10150 . Hier ist es also:
Holen Sie sich den sqlite3-Edelstein erneut und geben Sie diesmal die Plattform und den Pfad zu den neu kompilierten Binärdateien an:
gem install sqlite3 --platform=Ruby -- --with-sqlite3-include=[path\to\sqlite3.h] --with-sqlite3-lib=[path\to\sqlite3.o]
Zum Beispiel:
gem install sqlite3 --platform=Ruby -- --with-sqlite3-include=/c:/dev/sqlite3/ --with-sqlite3-lib=/c:/dev/sqlite3/.libs/
(von den in Schritt 4 angegebenen Pfaden)
Hoffe das hilft jemandem.
Ich konnte sqlite3 mit Ruby2.0.0 unter Windows XP32 mit folgendem Befehl installieren:
c:\>gem install sqlite3 --platform=Ruby -- --with-sqlite3-dir=C:/distr/sqlite --with-sqlite3-include=C:/distr/sqlite
Der Ordner C:/distr/sqlite
enthält folgende Dateien
Im Grunde habe ich sqlite-amalgamation-3071602.Zip
und sqlite-dll-win32-x86-3071602.Zip
nach C:/distr/sqlite
extrahiert.
KOPF HOCH
Sie müssen noch eine Kopie von sqlite3.dll
und sqlite3.def
irgendwo in PATH ablegen. IMHO ist es am besten, sqlite3-Binärdateien in Rubys Bin-Ordner aufzubewahren.
Dies ist ein alter Thread, aber immer noch relevant.
Für uns war es so einfach wie das Bearbeiten von Gemfile
und das Hinzufügen einer bestimmten Version für sqlite:
gem 'sqlite3', '~> 1.3.13
#!/usr/bin/env sh
mkdir c:/sqlite3x86
wget -P c:/sqlite3x86 http://packages.openknapsack.org/sqlite/sqlite-3.7.15.2-x86-windows.tar.lzma
cd c:/sqlite3x86
bsdtar --lzma -xf c:/sqlite3x86/sqlite-3.7.15.2-x86-windows.tar.lzma
gem install sqlite3 --platform=Ruby -- --with-opt-dir=c:/sqlite3x86
cd c:/
rm -rf c:/sqlite3x86
Für Windows gehen Sie zu C:/Ruby25-x64/lib/Ruby/gems/2.5.0/gems/sqlite3-1.3.13-x64-mingw32/lib/sqlite3.rb
.
und sicher gehen
require "sqlite3"
statt nativ
Die einfachste Möglichkeit, Ruby on Rails auf einem Windows-Computer einzurichten, ist der RailsInstaller, der sqlite3 automatisch installiert und für Sie konfiguriert. Ein Schritt.
Ich dachte mir, ich würde eine Antwort einreichen - aus den Kommentaren, um der Nachwelt willen. Das Problem schien zu sein, dass ich mir eine neue Version von Ruby/Rails (für Windows) schnappte, die "noch" nicht mit SQLite3 kompatibel war.
Ich habe auf 1.9.x heruntergestuft und konnte Dinge laufen lassen.
Holen Sie sich das fette Binary von hier
https://ci.appveyor.com/project/MSP-Greg/sqlite3-Ruby/build/3/job/hhk6ie8gdo545svr/artifacts
und
gem install c:\path\to\downloaded_gem.gem