➜~ rvm list
rvm rubies
ruby-1.9.2-p290 [ x86_64 ]
ruby-1.9.3-p0 [ x86_64 ]➜~ rvm use ruby-1.9.3-p0
RVM is not a function, selecting rubies with 'rvm use ...' will not work.
tem certeza de que instalou o rvm corretamente? qual sistema operacional você está usando?
lesce
2
Anexe o resultado de rvm infoà sua pergunta, por favor.
The Tin Man
Tive um problema semelhante ao instalar o rvm com apt-get no Ubuntu 11.10, tive que removê-lo e reinstalá-lo com$ bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
lesce
4
Você tem a função de carregamento RVM no script de inicialização do shell? [[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"é o código a ser usado. Se você tiver RVM instalado em seu caminho, mas não tiver isso em seu script de inicialização, poderá obter o RVM is not a functionerro.
eu tinha essa mesma linha (o [[-s "$ HOME / ...) em meu ~ / .bash_profile e não parecia" pegar "quando abri um novo terminal ... mas quando adicionei a linha abaixo da linha PATH no ~ / .bashrc, funcionou - ou seja, eu poderia digitar rvm usando 1.9.3 e ele reconheceria imediatamente o rvm como um comando sem que eu precisasse digitar source ~ / .bash_profile - i ' Não sou uma pessoa que trabalha com Linux, então isso me confunde, mas estou feliz que tenha funcionado. Talvez alguém possa esclarecer minha confusão.
TimDog
isso é ótimo, acabei de colocar esta linha em ~ / .bashrc, funciona. mas também não sei por quê.
Jack Ma,
Sim, está funcionando. Mas toda vez que eu reinicio minha máquina, tenho que dar os comandos mencionados acima. Se eu não fornecer os comandos, ele diz que o rvm não é uma função.
Apurva Mayank
11
Seu shell não sabe sobre a função RVM. Depois de instalá-lo, ele informa como cuidar disso. Ou vá para a página de instalação no site RVM e verifique a seção intitulada "2. Carregar RVM em suas sessões de shell como uma função"
Execute isso uma vez para adicionar a linha que carrega o rvm em seu ~ / .bash_profile:
ou adicione-o manualmente. (Observe que em alguns sistemas, você vai querer colocá-lo em outros lugares, por exemplo no meu sistema, Mac OSX Lion, eu coloquei em ~ / .profile)
Em uma instalação limpa do Ubuntu 12.04, tive o mesmo problema. O instalador RVM cria ou anexa a um arquivo chamado ~ / .bash_login o trecho de código necessário para evitar o problema original:
[[-s "$HOME/.rvm/scripts/rvm"]]&& source "$HOME/.rvm/scripts/rvm"# Load RVM into a shell session *as a function*
No entanto, isso não parece ser invocado. Adicioná-lo a ~ / .bashrc resolveu o problema para mim.
Não use fontes não autorizadas para instalar o RVM. A página de instalação do RVM diz especificamente: "Observe que quaisquer tutoriais externos NÃO são suportados, funcionem ou não. Os tutoriais são ótimos, no entanto, gastamos muitas horas de trabalho depurando o processo de instalação. Use o (s) processo (s) de instalação de apenas este site, visto que são os únicos tipos e métodos de instalação suportados. "
O Homem de Lata de
1
No meu caso no Ubuntu, a entrada em ~ / .bashrc tinha:
[[-s "$HOME/.rvm/scripts/rvm"]]&&."$HOME/.rvm/scripts/rvm"# BAD
ao invés de:
[[-s "$HOME/.rvm/scripts/rvm"]]&&."$HOME/.rvm/scripts/rvm"# WORKING
Observe a falta de espaço entre eles. e "$ HOME.
Além disso, se este for o problema, você também deve notar um erro na parte superior ao iniciar o terminal.
Tive uma instalação global do RVM, que executa /etc/profile.d/rvm.sh. No entanto, esse script requer que BASH_VERSION ou ZSH_VERSION seja definido. Eu estava correndo do crontab, que usa "sh".
Eu criei um script de wrapper que usa / bin / bash para fonte /etc/profile.d/rvm.sh.
Você precisa alterar as preferências do emulador de terminal para permitir o shell de login. Às vezes, é necessário usar /bin/bash --logincomo o comando.
rvm info
à sua pergunta, por favor.$ bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
é o código a ser usado. Se você tiver RVM instalado em seu caminho, mas não tiver isso em seu script de inicialização, poderá obter oRVM is not a function
erro.Respostas:
Corrigido. Eu precisava adicionar:
para
.zshrc
fonte
Isso aconteceu comigo também. Eu tinha:
Adicionado em meu .bashrc.
Tudo que eu tive que fazer foi adicionar outro
para o mesmo arquivo e funcionou! Claro, você tem que reiniciar seu terminal depois disso.
fonte
Seu shell não sabe sobre a função RVM. Depois de instalá-lo, ele informa como cuidar disso. Ou vá para a página de instalação no site RVM e verifique a seção intitulada "2. Carregar RVM em suas sessões de shell como uma função"
Execute isso uma vez para adicionar a linha que carrega o rvm em seu ~ / .bash_profile:
ou adicione-o manualmente. (Observe que em alguns sistemas, você vai querer colocá-lo em outros lugares, por exemplo no meu sistema, Mac OSX Lion, eu coloquei em ~ / .profile)
fonte
(Kubuntu 11.10) O
~/.bash_profile
agora é chamado~/.profile
fonte
Para alterar a versão padrão do ruby:
No Ubuntu 11.10
, altere a configuração do terminal GNOME:
Vá para o Terminal e siga as seguintes instruções:
Execute este comando no terminal:
fonte
Para adicionar toda a funcionalidade RVM ao seu .bash_profile, você deve usar o seguinte comando:
Depois disso, você deve recarregar o shell atual ou abrir uma nova sessão de terminal e digitar o seguinte comando para recarregar .bash_profile:
fonte
A solução acima só funcionará se o RVM for instalado para o usuário atual. Uma solução mais geral usaria a variável de caminho RVM:
fonte
rvm_path=/home/myuser/.rvm . /home/myuser/.rvm/scripts/rvm
Eu só tive que invocar a fonte
~/.bash_profile
fonte
Em uma instalação limpa do Ubuntu 12.04, tive o mesmo problema. O instalador RVM cria ou anexa a um arquivo chamado ~ / .bash_login o trecho de código necessário para evitar o problema original:
No entanto, isso não parece ser invocado. Adicioná-lo a ~ / .bashrc resolveu o problema para mim.
fonte
Instalando RVM, veja aqui http://octopress.org/docs/setup/rvm/
fonte
No meu caso no Ubuntu, a entrada em ~ / .bashrc tinha:
ao invés de:
Observe a falta de espaço entre eles. e "$ HOME.
Além disso, se este for o problema, você também deve notar um erro na parte superior ao iniciar o terminal.
fonte
Tive uma instalação global do RVM, que executa /etc/profile.d/rvm.sh. No entanto, esse script requer que BASH_VERSION ou ZSH_VERSION seja definido. Eu estava correndo do crontab, que usa "sh".
Eu criei um script de wrapper que usa / bin / bash para fonte /etc/profile.d/rvm.sh.
fonte
fonte