with latest instalar for ruby linux rubygems rvm .bash-profile

ruby - latest - RVM Advertencia! PATH no está configurado correctamente



rvm install fedora (7)

Acabo de instalar rvm en mi mac, pero recibo esta advertencia en comandos globales

¡Advertencia! PATH no está configurado correctamente, ''/usr/local/rvm/gems/ruby-1.9.3-p194/bin'' no se encuentra en primer lugar, generalmente esto se debe a los archivos de inicialización de shell - verifique que no haya ''PATH = .. . ''entradas, también podría ayudar a volver a agregar RVM a tus archivos de puntos:'' rvm get stable --auto-dotfiles '', para corregir temporalmente en esta sesión de shell:'' rvm use ruby-1.9.3-p194 ''.

Mi $ PATHS confirma la advertencia:

$echo :$PATH: :/usr/local/rvm/bin:/usr/local/heroku/bin:/usr/local/rvm/gems/ruby-1.9.3-p194/bin:/usr/local/rvm/gems/ruby-1.9.3-p194@global/bin:/usr/local/rvm/rubies/ruby-1.9.3-p194/bin:/usr/local/rvm/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:

Como se sugirió, primero probé rvm get stable --auto-dotfiles sin éxito, luego revisé mis archivos de inicialización de shell. Mi /.bash_profile:

export PATH=/usr/local/bin:/usr/local/sbin:$PATH export PATH=/usr/local/share/python:$PATH PATH=$PATH:$HOME/bin:/opt

Mi /Users/User/.bash_profile parece ser el culpable:

export PS1="[/w]$" alias ll=''ls -laGH'' alias .=''echo $PWD'' ### Added by the Heroku Toolbelt export PATH="/usr/local/heroku/bin:$PATH" # rvm PATH=/usr/local/rvm/bin:$PATH [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

La razón es que si elimino Heroku Toolbelt y las rutas rvm (que fueron respuestas sugeridas por otras preguntas de desbordamiento de pila), /usr/local/rvm/gems/ruby-1.9.3-p194/bin estaría en primer lugar y el problema esta resuelto. Sin embargo, no sé qué hacer con el cinturón de herramientas Heroku. Además, ¿no debería PATH=/usr/local/rvm/bin:$PATH colocar rvm primero de todos modos?

Debo faltar alguna solución trivial.

Notas adicionales: $rvm --debug get head no produce notas de instalación al respecto, excepto por la advertencia publicada anteriormente.

Actualización: llamar rvm system soluciona el problema, pero solo en la sesión de shell actual. $echo $PATH ahora produce:

:/usr/local/heroku/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/rvm/bin:

¿Qué es una solución permanente?


Busque sus archivos de configuración para:

export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting

Reemplace esa línea con:

export PATH="$HOME/.rvm/bin:$PATH" # Add RVM to PATH for scripting

Para asegurarse de que el código RVM esté al inicio de su $ PATH. También asegúrese de que ningún otro código se ponga al comienzo de $ PATH.


Como estaba usando la versión ubuntu de rvm, necesitaba poner esto en mi .profile:

PATH="$GEM_HOME/bin:/usr/share/rvm/bin:$PATH" # Add RVM to PATH for scripting [ -s /usr/share/rvm/scripts/rvm ] && source /usr/share/rvm/scripts/rvm


Derecha. Daría esta respuesta, ya que pasé horas investigando sin éxito. Espero que esto le salve a alguien más tiempo.

Mi problema fue tener 2 cabezas de rubí instaladas y, aparentemente, la versión de rubí también fue un problema.

➜ rvm list Warning! PATH is not properly set up, ''/home/ma/.rvm/gems/ruby-1.8.7-head/bin'' is not at first place. Usually this is caused by shell initialization files. Search for ''PATH=...'' entries. You can also re-add RVM to your profile by running: ''rvm get stable --auto-dotfiles''. To fix it temporarily in this shell session run: ''rvm use ruby-1.8.7-head''. To ignore this error add rvm_silence_path_mismatch_check_flag=1 to your ~/.rvmrc file. rvm rubies => ruby-1.8.7-head [ x86_64 ] ruby-1.8.7-p374 [ x86_64 ] ruby-2.3.0 [ x86_64 ] ruby-2.4.0 [ x86_64 ] * ruby-head [ x86_64 ] # => - current # =* - current && default # * - default

En este caso, (probando todas las soluciones anteriores, this y this ), establezca mi valor predeterminado en ruby-head [ x86_64 ] y reinicie el terminal ¡La Warning! Y mi versión actual de ruby ​​persistía como se muestra en el fragmento anterior.

Para arreglar eso:

rvm remove ruby-1.8.7-head

Ahora, si reinicio el terminal:

➜ rvm list rvm rubies ruby-1.8.7-p374 [ x86_64 ] ruby-2.3.0 [ x86_64 ] ruby-2.4.0 [ x86_64 ] =* ruby-head [ x86_64 ] # => - current # =* - current && default # * - default


En mi caso, Heroku había agregado lo siguiente a mi .bashrc:

### Added by the Heroku Toolbelt export PATH="/usr/local/heroku/bin:$PATH"

Observe cómo se está preparando para el camino. Todo lo que tenía que hacer era cambiarlo por:

### Added by the Heroku Toolbelt export PATH="$PATH:/usr/local/heroku/bin"

¡Y mi problema fue resuelto!

Si no tiene Heroku, busque cualquier otra cosa que pueda estar preparándose en su camino. Realmente, RVM solo quiere asegurarse de que tenga una buena oportunidad de cargar Ruby antes de que se carguen las gemas que se incluyen en el camino.


La solución fue correr.

$rvm install ruby-head $rvm use ruby-head

con un $rvm docs generate-ti opcional de $rvm docs generate-ti

Estaba usando una versión desactualizada de Ruby en mi sistema, actualizándola a la versión actual.


Parece que, y al final de .bashrc, debes garantizar que la ruta rvm esté al comienzo de $PATH


Tengo el mismo problema con rvm 1.25.26.

solución:

He modificado ~/.bashrc siguiente manera:

## rvm PATH="$GEM_HOME/bin:$HOME/.rvm/bin:$PATH" # Add RVM to PATH for scripting [ -s ${HOME}/.rvm/scripts/rvm ] && source ${HOME}/.rvm/scripts/rvm

causando

La advertencia se activa en la función __rvm_path_match_gem_home_check () en $HOME/.rvm/scripts/functions/cli .

Si el comienzo de $PATH no comienza desde $GEM_HOME/bin , se muestra un mensaje de advertencia.

__rvm_path_match_gem_home_check() { (( ${rvm_silence_path_mismatch_check_flag:-0} == 0 )) || return 0 [[ -n "${GEM_HOME:-}" ]] || return 0 case "$PATH:" in ($GEM_HOME/bin:*) true ;; # all fine here (*:$GEM_HOME/bin:*) __rvm_path_match_gem_home_check_warning "is not at first place" ;; (*) __rvm_path_match_gem_home_check_warning "is not available" ;; esac }