Pregunta

Intenté hacer esto

gem uninstall sqlite3-ruby
gem uninstall sqlite3

entonces realicé find ~/ | grep mkmf.log

Y eliminó cualquier directorio sqlite3 que tuviera en el sistema.

Pero todavía está en mi contenedor.¿Alguien conoce una forma más profesional de eliminar sqlite3?

Digo esto porque llevo cinco días lidiando con este error:

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

He destruido completamente mi servidor tres veces y reinstalé cada aplicación y sqlite3 incluidos en él una y otra vez.Pero todavía piensa que es un encabezado antiguo.

¡Gracias!

¿Fue útil?

Solución

Te recomiendo que uses rvm y bundler para administrar sus gemas y dependencias de gemas.Nunca instalo gemas en todo el sistema, especialmente en una Mac, donde puede resultar muy complicado tratar con gemas en todo el sistema.

Es fácil instalar y poner en marcha el paquete rvm +.

Primero, instala rvm (debes tener git).

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

Configurar rvm

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

Luego, instala tu Ruby a través de rvm.

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

Cambie a su compilador Ruby

rvm use ree

Crea tu conjunto de gemas para cambiar fácilmente a diferentes versiones de gemas.

rvm gemset create rails3 # where rails3 is the gemset name

Usa tu conjunto de gemas

rvm use ree@rails3

Instalar paquete

gem install bundler # without sudo

Crea un Gemfile e instala tus gemas.

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

Acerca de tu publicación original, si se trata de una instalación del sistema, puedes verificarla ejecutando which sqlite3_ruby y si regresa /usr/bin/sqlite3_ruby entonces deberías anteponer sudo a gem uninstall dominio.

Otros consejos

La gema Ruby es solo una envoltura alrededor del SQLite "Real", que es una biblioteca más una herramienta de línea de comandos.Así que eliminar la gema no quita la biblioteca / cli.Debe eliminarlo con cualquier herramienta de embalaje que proporcione su sistema operativo (no nos dijo qué sistema operativo está usando), como yast o apt o pkg ...

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top