2011-08-03 20 views
16

Ok, acabo de crear una nueva instalación de Ubuntu 11.04 en Windows 7 usando VirtualBox (no estoy seguro si esto importa o no, pero solo un fyi)Instalación reciente de RVM en Ubuntu no me permite instalar gems (error de zlib)

el listado mis rubíes me sale:

[email protected]:~$ rvm list 

rvm rubies 

=> ruby-1.9.2-p290 [ x86_64 ] 

pero luego tratando de instalar los rieles de la gema me sale esto:

[email protected]:~$ gem install rails 
ERROR: Loading command: install (LoadError) 
    no such file to load -- zlib 
ERROR: While executing gem ... (NameError) 
    uninitialized constant Gem::Commands::InstallCommand 
[email protected]:~$ 

¿Qué estoy haciendo mal?

Editar:
Después de hacer lo que Dylan dijo mi salida (para probar esas bibliotecas ya están instalados):

[email protected]:~$ sudo apt-get install build-essential bison openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev 
[sudo] password for aaron: 
Reading package lists... Done 
Building dependency tree  
Reading state information... Done 
Note, selecting 'libxslt1-dev' instead of 'libxslt-dev' 
Note, selecting 'libncurses5-dev' instead of 'ncurses-dev' 
autoconf is already the newest version. 
bison is already the newest version. 
build-essential is already the newest version. 
git-core is already the newest version. 
libc6-dev is already the newest version. 
libncurses5-dev is already the newest version. 
libreadline6 is already the newest version. 
libreadline6-dev is already the newest version. 
libsqlite3-0 is already the newest version. 
libsqlite3-dev is already the newest version. 
libssl-dev is already the newest version. 
libxslt1-dev is already the newest version. 
libyaml-dev is already the newest version. 
openssl is already the newest version. 
sqlite3 is already the newest version. 
zlib1g is already the newest version. 
zlib1g-dev is already the newest version. 
curl is already the newest version. 
libxml2-dev is already the newest version. 
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 
[email protected]:~$ gem install rails 
ERROR: Loading command: install (LoadError) 
    no such file to load -- zlib 
ERROR: While executing gem ... (NameError) 
    uninitialized constant Gem::Commands::InstallCommand 
[email protected]:~$ 

Respuesta

25

Run rvm notes y asegúrese de usar apt-get para instalar las cosas RVM le indica a . Esto (algo similar a zlib1g-devel será uno de ellos).

Para Ubuntu, debería ser algo como esto:

/usr/bin/apt-get install build-essential bison openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev

Puede que tenga que volver a compilar el 1.9.2 después (no es 100% seguro de ello).

+0

Dylan , al principio no funcionaba, pero luego leí la última parte: D. Tuve que recompilar. ¡Ahora funciona! – DJTripleThreat

+0

No pude conseguir 'gem install' para hacer nada hasta que ejecuté' sudo apt-get install libxml2-dev libxslt-dev'. No fue necesario recompilar; simplemente comenzó a funcionar después de eso. Gracias. –

19

Encontré que necesitamos instalar el paquete zlib después de instalar los paquetes anteriores (dicho rvm). Así que tenemos que hacer:
rvm pkg install zlib
Después de eso, vuelva a instalar ruby. rvm reinstall 1.9.3
Ejecutar gem install rails
Instalará con éxito los rieles.

+0

¡¡¡buena respuesta, funcionó !! ¡¡¡Gracias !! – user352290

+0

muy buena solución. ¡increíble! – carnator

+0

¡Trabajó para mí también! Gracias. –

0

Si confía en RVM puede ejecutar los siguientes dos comandos. Este

rvm requirements run 
rvm reinstall all --force 

Entonces la gema el comando de instalación carriles debería funcionar.

El primer paso instalará todos los paquetes que se necesitan para RVM. Normalmente no necesitas todo, pero es mejor tratar de buscar paquete por paquete.

La mayoría de la gente se pierda esta parte de la RVM instalar

Por último, ver si existen requisitos de dependencia para su sistema operativo ejecutando:

usuario $ requisitos RVM

Cuestiones relacionadas