RVM, ZSH'de çalışmıyor


96

Mac'imde ZSH kabuğunu denemek istiyorum, ancak aynı zamanda çok fazla Ruby ve Rails geliştirmesi yapıyorum, bu yüzden biraz da RVM kullanıyorum. Sorun şu ki, RVM'nin ZSH'de çalışmasını sağlayamıyorum ve varsayılan Bash kabuğunda iyi çalışıyor:

> zsh
> rvm 1.9.2
> ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
> which ruby
/usr/bin/ruby

RVM'nin ve RVM altında Ruby 1.9.2'nin kurulu olduğunu kesinlikle onaylayabilirim; Bash'de her zaman kullanırım. rvm listZSH'de an çalıştırmak ilginç bir şekilde şunu gösterir:

rvm rubies

   ruby-1.8.7-p302 [ x86_64 ]
=> ruby-1.9.2-p0 [ x86_64 ]

Bu hem iMac'imde hem de MacBook Pro'mda oluyor. Her ikisinde de OS X 10.6.6, iMac'te ZSH 4.3.9 (dizüstü bilgisayarda 4.3.10) kullanıyorum. Henüz oh-my-zsh gibi bir şey yok.

RVM'nin web sitesindeki belgelere bakmayı denedim , ancak hiçbir şey bana yardımcı olmadı.

Yanıtlar:


276

~ / .Zshrc dosyanızda bu satır var mı?

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" 

2
Hahaha, bu basit şeyi tamamen unuttum. Şimdi buraya daha erken gelmediğim için inatçılığıma kızıyorum. Teşekkür ederim :).
swilliams

6
Rica ederim. Bazen olur :) Eski ayarlarımı korumak için yaptığım yararlı bir şey: ~ / .zshrc dosyamdaki "source ~ / .profile" ve "source ~ / .bash_profile". Ayrıca .zshrc dosyamı biraz daha temiz tutar.
intellidiot

3
Zsh'yi özelleştirmek için oh-my-zsh kullandığımda, .zshrc'ye mevcut kabuğumdan aldığı bir dizi yol eklediğini buldum - bu, bash altında rvm tarafından eklenen yolları içeriyordu.
Luke Chadwick

1
Satır [[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm".zlogin'imde olduğu için bunu anlamaya çalışmak için de yıllar harcadım, ancak sanırım mac'umda yeni terminal pencereleri açarken kullanmıyordu (10.7.3, oh my zsh). Bunu .zshrc'ye eklemek benim için de işe yaradı, ancak bu stackoverflow yorumuna göre , .zshrc bunu koymak için yanlış yer mi ??
waffl

5
Ayrıca, $ HOME / .rvm / bin yolunuzun / usr / bin'den önce olduğundan emin olun, aksi takdirde OS X ile birlikte gelen Ruby çalıştırılabilir dosyasını çağırıyor olabilirsiniz. ZSH'de 'where ruby' yazarak önceliği kontrol edebilirsiniz. .
Bozulabilir Dave

22

Mart 2014 Not:

En son RVM ile aşağıdaki satır:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" 

artık gerekli değil ve senin içinde olmamalı ~/.zshrc.

Zsh ile RVM belgelerinde belgeler güncellendi :

İTerm2 Tercihleri: Oturum açma kabuğu seçeneğinin ayarlandığından emin olun (Komut seçeneğini kullanmayın). Bu, RVM'nin çalışması için gereklidir.

Hala rvm alıyorsanız iTerm'de bir işlev hatası yoksa, şunu deneyin:

rvm get stable --auto-dotfiles

En azından benim Arch Linux yüklememde, xterm bir giriş kabuğu kullanmıyor ve bu nedenle rvm, bu komutu çalıştırsa bile doğru şekilde kurulmamış gibi görünüyor.
ioquatix

4

Kasım 2014 Not

Rvm kurulum talimatları, .zshrc'nin PATH'i ayarlarken $ PATH içermediği konusunda uyarır, böylece PATH'in içeriğini PATH'de zaten var olanlara bakılmaksızın değiştirir.

Bu durumu düzeltmek Şimdi etmek eklenecek olması PATH .rvm/binsonra ve başa getirebilir $PATH ayarı başında PATHikinci satırda:

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

export PATH=$PATH:"/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/git/bin:/usr/local/mysql/bin:/opt/local/bin"

1

Aynı sorunu yaşadım, bunu "ruby on rails" kurulumundan sonra kullanarak çözdüm:

echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.zshrc

ve

source ~/.zshrc

0

Zsh kullanıyorum ve [[-s "$ HOME / .rvm / scripts / rvm"]] && vardı. .Zshrc dosyamda "$ HOME / .rvm / scripts / rvm", ancak bir ayrıştırma hatası alıyordum: 404.

Bu satırı .profile dosyasına taşıdığımda hata durdu. Görünüşe göre .zshrc dosyamdaki bir şeyle çelişiyordu ve belki de onu .profile içinde çalıştırmak .zshrc dosyası uyumsuzluğunu önledi. Yapamadım

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.