ruby macos osx-lion homebrew

¿Cómo puedo cambiar a ruby 1.9.3 instalado usando Homebrew?



macos osx-lion (7)

Al igual que un enfoque alternativo para cualquier otra persona que busque una respuesta a esto, puede establecer un alias en su .bash_profile, por ejemplo

ruby="/usr/local/bin/ruby"

así es como logré solucionar el problema

He instalado ruby ​​1.9.3 usando hombrew

brew instalar ruby

Pero el predeterminado 1.8.7 todavía se usa. ¿Cómo puedo cambiar OSX para usar 1.9.3 como ruby ​​predeterminado?


En OSX puedes cambiar la ruta usando:

sudo nano / etc / paths

Y luego agrega una ruta o cambia el orden.


Si desea utilizar homebrew para instalar 1.9.3, puede seguir estos pasos:

$ brew update $ brew install rbenv $ brew install ruby-build

Una vez que haya instalado rbenv y ruby-build, puede ejecutar el siguiente comando para instalar Ruby 1.9.3.

$ rbenv install 1.9.3-p125

Ahora, si desea usar 1.9.3 de forma predeterminada, puede ejecutar el siguiente comando:

$ rbenv global 1.9.3-p125


Tuve una situación similar. Instalé Ruby usando Homebrew. which -a ruby me dio el siguiente resultado:

#usr/local/bin/ruby #/usr/bin/ruby

Lo que significa que la versión recién instalada debería haberse utilizado, pero ruby --version aún devolvió la versión anterior del sistema.

Salí de la terminal (Cmd + Q), y después de reiniciar ruby --version devolvió la versión correcta. Así que asegúrese de reiniciar la terminal después de la instalación antes de probar cualquier otra corrección (potencialmente innecesaria).


CORTO: Anote para qué lo quiere cambiar.

Si estás en OS X y tratas de usar Ruby para algo como Jekyll, entonces no uses homebrew porque eso es lo que Apple está usando para Ruby y podría no ser bueno usarlo si no estás seguro de lo que eres obra. En su lugar, use rbenv o RVM.

MENOS CORTO: estaba tratando de cambiar de la versión predeterminada a una versión actualizada (desde 2.0) para usar Jekyll porque requería la versión 2.2.5 y posteriores de Ruby. Lo actualicé y se instaló la versión 2.5, pero cuando revisé "ruby -v", seguía siendo 2.0. Una vez que finalmente logré cambiar la versión predeterminada, no pude instalar el paquete que necesitaba porque no tenía permiso de escritura. Por ejemplo, si te encuentras con algo así, entonces probablemente estés teniendo el mismo problema

$ gem install jekyll bundler ERROR: While executing gem ... (Gem::FilePermissionError) You don''t have write permissions for the /Library/Ruby/Gems/2.0.0 directory.


RESPUESTA CORTA:

después de instalar Ruby a través de homebrew solo haz esto:

brew link --overwrite ruby

y reinicia o reabre tu Terminal

RESPUESTA LARGA

Así que hice una instalación normal de ruby ​​usando homebrew

brew install ruby

que está bien instalado PERO todavía estaba usando el rubí predeterminado del sistema. que verifiqué haciendo:

which ruby #/usr/bin/ruby

Entonces, según la sugerencia de Matthew Rudy, verifiqué el orden de mis / etc / paths, y todo fue bueno.

Entonces decidí hacer:

which -a ruby #/usr/bin/ruby #usr/local/bin/ruby

así que nada se rompió como tal. intenté volver a instalar Ruby usando el método homebrew, y luego lo encontré.

Homebrew mencionó:

Warning: ruby-2.3.1 already installed, it''s just not linked

así que tenía que hacer:

brew link --overwrite ruby


Te sugiero que rvm un vistazo a rvm . Puede configurarlo como predeterminado con rvm use 1.9.3 --default

Pero si está contento con su instalación homebrew.

Entonces simplemente cambie la precedencia de los directorios en el PATH

Aquí está mi / etc / paths

# homebrews should always take precedence /usr/local/bin # the default stack /usr/bin /bin /usr/sbin /sbin

En general, esto es importante para homebrew, de lo contrario se usará la versión del sistema de git, ruby, pg_admin, ... en lugar de la versión de preparación.

si dices which -a ruby verás todos los rubíes instalados y la precedencia en la PATH

p.ej.

$ which -a ruby /Users/matthew/.rvm/rubies/ruby-1.9.3-p0/bin/ruby /Users/matthew/.rvm/bin/ruby /usr/bin/ruby ACTUALIZACIÓN: ahora no creo que debas cambiar /etc/paths

En su lugar, debe comprobar qué .profile de .profile , .bashrc o .bash_login se está cargando en su shell, y simplemente agregue /usr/local/bin a su ruta.

Para mí, solo tengo un .profile . Puede crear ese archivo si ninguno de esos archivos ya existe en su directorio de inicio.

# homebrews should always take precedence export PATH=/usr/local/bin:$PATH