Frage

Ich habe versucht, das zu tun

gem uninstall sqlite3-ruby
gem uninstall sqlite3

Dann trat ich auf find ~/ | grep mkmf.log

Und es entfernte jedes sqlite3-Verzeichnis, das ich auf dem System hatte.

Aber es ist immer noch in meinem Mülleimer.Kennt jemand eine professionellere Methode zum Entfernen von sqlite3?

Ich sage das, weil ich mich jetzt seit fünf Tagen mit diesem Fehler beschäftige :

sqlite3-ruby only supports sqlite3 versions 3.6.16+, please upgrade!
*** extconf.rb failed ***

Ich habe meinen Server jetzt dreimal komplett entkernt und jede einzelne Anwendung und sqlite3 immer wieder neu installiert.Aber es denkt immer noch, dass es ein alter Header ist.

Danke!

War es hilfreich?

Lösung

Ich empfehle Ihnen, zu verwenden rvm und bundler um Ihre Edelsteine und Edelsteinabhängigkeiten zu verwalten.Ich installiere nie systemweit Edelsteine, insbesondere auf einem Mac, auf dem der Umgang mit systemweiten Edelsteinen sehr chaotisch werden kann.

Es ist einfach, rvm + bundler einzurichten und zu starten.

Installieren Sie zuerst rvm (Sie müssen git haben).

bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )
# this will be installed on your $HOME/.rvm directory

rvm einrichten

echo "source $HOME/.rvm/scripts/rvm" >> $HOME/.bash_profile
source "$HOME/.rvm/scripts/rvm" 

Installieren Sie dann Ihren Ruby über rvm

rvm install ree # Ruby Enterprise Edition or,
# rvm install 1.9.2
# rvm install 1.8.7

Wechseln Sie zu Ihrem Ruby-Compiler

rvm use ree

Erstellen Sie Ihr Edelsteinset, um einfach zu verschiedenen Edelsteinversionen zu wechseln.

rvm gemset create rails3 # where rails3 is the gemset name

Verwenden Sie Ihr Edelsteinset

rvm use ree@rails3

Bundler installieren

gem install bundler # without sudo

Erstelle ein Gemfile und installiere deine Gems.

mkdir myproject
cd myproject
bundle init # this will create a Gemfile
echo "gem 'rails'" >> Gemfile
echo "gem 'sqlite3-ruby', :require => 'sqlite3'" >> Gemfile
bundle install

Wenn es sich bei Ihrem ursprünglichen Beitrag um eine Systeminstallation handelt, können Sie dies überprüfen, indem Sie Folgendes ausführen which sqlite3_ruby und wenn es zurückkehrt /usr/bin/sqlite3_ruby dann sollten Sie voranstellen sudo zu gem uninstall Befehl.

Andere Tipps

Das Ruby-Juwel ist nur ein Wrapper um das "echte" SQLite, das eine Bibliothek plus ein Befehlszeilentool ist.Das Entfernen des Edelsteins entfernt also nicht die Bibliothek / cli.Sie müssen das mit dem von Ihrem Betriebssystem bereitgestellten Verpackungstool entfernen (Sie haben uns nicht mitgeteilt, welches Betriebssystem Sie verwenden), z yast oder apt oder pkg...

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top