[ruby] rvm 설치가 작동하지 않습니다 :“RVM은 기능이 아닙니다”

방금 RVM을 설치했지만 작동시킬 수 없습니다. 내 .profile파일 끝에 그런 줄이 있습니다.

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

source .profile터미널 을 실행 하고 다시 시작 하려고 했지만 여전히 실행하면 다음 과 같은 결과 rvm use 1.9.2가 나타납니다.

RVM is not a function, selecting rubies with 'rvm use ...' will not work.

내 시스템은 Ubuntu 11.10입니다.



답변

로그인 쉘을 사용하지 않습니다.

로그인 플래그를 활성화하는 프로세스는 여기 에 설명되어 있으며 로그인 쉘에 대한 자세한 내용은 여기를 참조하십시오 .

따라서 Gnome 터미널 설정에서 “로그인 셸로 실행” 옵션을 확인해야합니다 . 이 플래그를 설정 한 후 새 터미널을 열어야합니다.

때로는 명령을로 설정해야합니다 /bin/bash --login.


대한 원격 연결은 대화 형 실행 사이의 differene 이해하는 것이 중요하다 ssh세션을 단일 명령을 실행합니다.

ssh server서버를 대화식으로 실행 하고 작업 하는 동안 기본적으로 로그인 셸을 사용하고 있으며 모두 괜찮습니다.하지만 ssh server "command"로그인 셸을 사용하지 않으므로로 실행해야합니다 ssh server 'bash -lc "command"'.

원격 호출은로 단일 명령을 실행하는 것과 같은 문제가있을 수 있습니다 ssh.


답변

다음을 실행해야합니다

$ source ~/.rvm/scripts/rvm

그런 다음 이것을 실행하십시오

$ type rvm | head -n 1

그리고 당신이 얻는다면

rvm is a function

문제가 해결되었습니다.

user$ rvm requirements운영 체제에 대한 종속성 요구 사항을 보려면 실행해야 합니다.

출처 : https://rvm.io/rvm/install/

이 코드를 ~ / .bashrc 또는 ~ / .zshrc 파일에 넣어야하며이 코드를 다시 작성할 필요가 없다는 언급을 잊었습니다. 건배!


답변

이 문제를 영구적으로 해결하려면 다음 줄을 잘라내어 붙여 넣으십시오.

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

보낸 사람 : ~/.bash_profile파일

받는 사람 : ~/.bashrc파일

이것이 작동하는 이유는 .bashrc터미널을 입력 .bash_profile할 때마다 로그인 할 때마다 실행 되기 때문 입니다 . 이것이 솔루션이 /bin/bash --login작동하는 이유 이지만 터미널에 들어갈 때마다 그렇게해야합니다. 이렇게하면 다음 형식까지 설정되며 그때 까지이 모든 것을 잊어 버릴 것입니다 🙂


답변

나도이 문제에 직면했다. 마지막으로 터미널 에서이 줄을 실행했습니다.

source ~/.rvm/scripts/rvm

문제가 해결되었습니다. 이 줄은 RVM 인스턴스를 특정 시간 동안 함수로 만들 것입니다.


답변

최신 RVM (rvm 1.11.6 (stable))은 우분투 (10.10-64 비트-nerdy gnat 또는 기타)에서 작동을 멈췄습니다.

“RVM은 기능이 아니며 ‘rvm use …’로 루비를 선택하면 작동하지 않습니다.”

이전에 메시지를 받았지만 ‘rvm 1.9.3-p0@rails321’이 작동합니다. 이제는 작동하지 않습니다. 보석 세트를 전혀 바꿀 수 없었습니다.

내가 이것을 찾을 때까지 아무것도 효과가 없었습니다. /home/your-name/.bashrc

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


답변

말했듯이 표시된 오류는 다음 오류 일 수 있습니다.

RVM is not a function, selecting rubies with 'rvm use ...' will not work.

You need to change your terminal emulator preferences to allow login shell.
Sometimes it is required to use `/bin/bash --login` as the command.
Please visit https://rvm.io/integration/gnome-terminal/ for a example.

위에서 말했듯이 ‘ / bin / bash –login을 입력하십시오. 터미널에 ‘을 입력 한 다음 (터미널을 다시 시작한 후) comand ‘rvm use 1.9.3′(예 :)을 입력하면 동일한 버전을 사용하기 시작합니다.

‘ruby -v’명령을 실행하여 RVM이 업데이트 된 버전의 Ruby를 사용하고 있는지 확인하십시오.


답변

새로운 rvm 설치 에서도이 문제가 발생했으며 여기에 대한 답변 중 하나도 해결되지 않았습니다. 기본 섹션에서 공식 rvm 사이트로 이동하면 다음 명령이 있습니다.

http://rvm.io/rvm/basics 에서 #

소스 $ (rvm 1.9.3 do rvm env –path)

실제로 원하는 루비 버전에 대해 1.9.3을 변경해야하며 쉘 유형에 관계없이 rvm을 함수로 만듭니다.