2009-12-23 11 views
25

Estoy usando Ubuntu 9.10 Karmic Koala y Ruby 1.9.1.Rieles instalados, pero el comando rails dice que no está instalado

Instalé Rails usando sudo gem install rails, que instaló todas las bibliotecas para mí.

Cuando escribo rails en el terminal, dice.

El programa 'rieles' no está actualmente instalado. Se puede instalar escribiendo: sudo apt-get install rieles rieles: comando no encontrado

puedo encontrar rastrillo, que se encuentra bajo rake1.9.1, pero Rails es por ningún lado, alguien me puede apuntar en la ¿dirección correcta?

Editar: ruta de acceso a ruby ​​no es el problema, el problema es ¿dónde está los rieles? ¿cómo lo ejecuto? los rieles simplemente no funcionan, ¿dónde viven las vidas exectables?

+0

¿Ha actualizado su variable PATH para incluir el directorio bin de la instalación de los rieles? – MarkPowell

+0

no .. No lo hice, ¿a dónde debería apuntar? No puedo encontrar su ejecutable. locate rails devuelve solo los enlaces de la documentación. – rgoytacaz

+0

posible duplicado de [Rails me sigue diciendo que no está actualmente instalado] (http://stackoverflow.com/questions/7788946/rails-keeps-telling-me-that-its-not- current-installed) –

Respuesta

20

Como dicen otros, esto bien puede ser un problema de variable PATH en su archivo bashrc/bash_profile.

You can learn how to change PATH..

, usted puede obtener la variable PATH actual escribiendo echo $PATH

+0

no es un problema poner la ruta allí, parece que no está instalada, ¿cómo puedo verificar si realmente está instalada? ¿Cuál es su ejecutable? ¿Dónde vive? – rgoytacaz

+18

Ejecuta el 'entorno de la gema' y encontrarás' DIRECTORIO EJECUTABLE'. –

+4

¡ERES EXCELENTE! GRACIAS TK! Eso es exactamente lo que necesitaba. Resulta que instalarlo a través de gem no crea un enlace simbólico. Lo creé y lo señalo al directorio ejecutable. funciona bien – rgoytacaz

-1

Es posible que desee incluir la ruta de la carpeta Ruby/Jruby en su archivo bashrc. Eso garantizaría que pueda ejecutarlo desde cualquier lugar. No olvide reiniciar la terminal o "source .bashrc" para volver a cargar las variables en los terminales.

+0

El problema no es con ruby, Ruby funciona muy bien. Pero cuando corre los rieles, dice que no está instalado, aunque si lo hago, me mostrará correctamente, rails 2.3.5 – rgoytacaz

+0

Miré la carpeta bin de mi instalación de ruby. Tiene un archivo de "rieles". Si cambio el nombre a algo más e intento correr raíles; no andamia ni crea proyectos ... en su lugar dice que los rieles no están instalados, haga sudo apt-get install para instalar rieles. Pero si cambio el nombre de nuevo a los rieles; entonces comienza a funcionar. Así que estoy bastante seguro de que, siempre que los rieles estén instalados correctamente y lo tengas en la carpeta bin, deberían ejecutarse. Tal vez no lo he instalado como una gema y además estoy usando JRuby. – Priyank

1

gem debería haber colocado los carriles script ejecutable en la misma ubicación que el rubí de. Me gustaría ver allí y asegurarme de que los permisos están configurados correctamente y que es ejecutable.

11

Sólo tenían el mismo problema sólo hay que poner lo siguiente en su .bashrc

PATH="${PATH}:/var/lib/gems/1.8/bin/" 
+2

RUTA = "$ {RUTA}:/var/lib/gems/1.8/bin /" –

14

si se está ejecutando un comando rieles inmediatamente después de la instalación de rieles, tendrá que reiniciar el terminal antes de sus comandos Ser reconocido.

+1

Tenga cuidado al publicar copiar y pegar respuestas repetidas o verbales a múltiples preguntas, estas tienden a ser señaladas como "basura" por la comunidad. Si está haciendo esto, generalmente significa que las preguntas son duplicadas, por lo tanto, márquelas como tales: http://stackoverflow.com/a/13149543/419 – Kev

+1

Marcado. Tendré más cuidado con eso. La respuesta puede ser útil para aquellos que se encuentran con cualquiera de las publicaciones (como yo), y es por eso que la compartí. –

+0

este comentario es bastante subestimado porque lo resolvió lol – RDSpinz

1

Creo que esta no es la forma correcta de resolver este problema. Pero lo que he hecho es He creado un archivo rails.rb en mi directorio ejecutable porque cuando abrí ese archivo de directorio no estaba allí y puse el siguiente contenido.

#!/usr/bin/env ruby_noexec_wrapper 
# 
# This file was generated by RubyGems. 
# 
# The application 'railties' is installed as part of a gem, and 
# this file is here to facilitate running it. 
# 

require 'rubygems' 

version = ">= 0" 

if ARGV.first =~ /^_(.*)_$/ and Gem::Version.correct? $1 then 
    version = $1 
    ARGV.shift 
end 

gem 'railties', version 
load Gem.bin_path('railties', 'rails', version) 

entonces trato de ejecutar rails s en mi proyecto y sus obras ..

Pero antes de esto, asegúrese de que el directorio de la aplicación que está en su camino como que ya tengo en mi máquina: /home/anand/.rvm/gems/ruby-1.9.3-p286/bin:/home/anand/.rvm/gems/[email protected]/bin:/home/anand/.rvm/rubies/ruby-1.9.3-p286/bin:/home/anand/.rvm/bin

Según TK dijo que puede obtener la ruta ejecutable usando el comando gem environment

1

Agregué las siguientes líneas a mi archivo .bashrc y funcionó.

[[-s "$ HOME/.rvm/scripts/rvm"]] & & fuente "$ HOME /.RVM/scripts/RVM "# Carga RVM en una sesión de shell en función

PATH =" $ {PATH}:. $ {HOME}/RVM/joyas/Ruby-1.9.3-P327/bin/"

3

Suponiendo ruby-2.0.0-p247 está instalado, se encuentra en rails siguiente ubicación.

[email protected]$ ls -l ~/.rvm/gems/ruby-2.0.0-p247/bin/ 
total 60 
-rwxr-xr-x 1 prayag prayag 484 Oct 2 00:20 cap 
-rwxr-xr-x 1 prayag prayag 487 Oct 2 00:20 capify 
-rwxr-xr-x 1 prayag prayag 475 Oct 1 21:13 erubis 
-rwxr-xr-x 1 prayag prayag 469 Oct 1 21:13 rackup 
-rwxr-xr-x 1 prayag prayag 480 Oct 1 21:18 rails 
-rwxr-xr-x 1 prayag prayag 494 Oct 2 00:27 restclient 
-rwxrwxr-x 1 prayag prayag 368 Oct 1 21:10 ruby_executable_hooks 
-rwxr-xr-x 1 prayag prayag 467 Oct 2 00:27 sass 
-rwxr-xr-x 1 prayag prayag 475 Oct 2 00:27 sass-convert 
-rwxr-xr-x 1 prayag prayag 467 Oct 2 00:27 scss 
-rwxr-xr-x 1 prayag prayag 487 Oct 1 21:20 sprockets 
-rwxr-xr-x 1 prayag prayag 483 Oct 2 00:29 stripe-console 
-rwxr-xr-x 1 prayag prayag 467 Oct 1 21:17 thor 
-rwxr-xr-x 1 prayag prayag 467 Oct 1 21:20 tilt 
-rwxr-xr-x 1 prayag prayag 474 Oct 1 21:16 tt 

[1].bash_profile ya debería estar conteniendo siguiente línea, si no añadir.

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function* 

[2] Agregar siguiente línea al final de .bashrc.

PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting 
PATH="${PATH}:${HOME}/.rvm/gems/ruby-2.0.0-p247/bin/" 

[3] Recargar ~/.bashrc

$ source ~/.bashrc 

Y, debería funcionar.

2

Si está ejecutando rbenv, deberá ejecutar rbenv rehash para obtener acceso al comando rails-api.

0

Una posible solución es la de no mantener dos archivos de configuración diferentes .bash_profile y .bashrc

Se sugiere en este excelente post sobre la diferencia entre .bash_profile y .bashrc es a la fuente .bashrc de su archivo .bash_profile, a continuación, poner la configuración de rutas y comunes en .bashrc.

Citando,

añadir las siguientes líneas a .bash_profile:

if [ -f ~/.bashrc ]; then source ~/.bashrc fi

fin de la cita

1

Si está utilizando rbenv no se olvide de añadir

eval "$(rbenv init -)" 

en su .bash_profile u otras secuencias de comandos de inicio. ejecutar rbenv rehash también es necesario.

Cuestiones relacionadas