2012-09-25 3 views
2

저는 Ruby 개발자가 아니지만 Mac에서 많은 보석과 함께 레일에 Ruby를 사용하는 응용 프로그램을 실행해야합니다.Ruby 환경 이해 (rvm, 레일, 보석 등 ...)

... 내가 ECC 엑스 코드, 승객, RVM, 같은 애플 리케이션을 많이 설치해야 볼 온라인 몇 가지 튜토리얼을 따라

다 괜찮습니다하지만 어느 날 만 유지 모든 것을 제거하기로 결정한 경우에 대한 Mac에 이미 존재하는 Ruby 기본 설치?

어디에서 bundle install을 사용하여 다운로드 한 모든 보석을 현지화 할 수 있습니까?

터미널을 사용하고 이러한 모든 명령을 작성하는 것은 깨끗한 해결책입니까 아니면 내 시스템을 "더티"로 느리게 만들 수 있습니까?

이 모든 질문에 대해 유감이지만이 환경을 설치하는 "최상의 방법"이 있는지, 어떻게 작동하는지, 그리고 언젠가는 그 일을하기로 결정하면 완전히 제거하는 방법을 알고 싶습니다.

답변

2

RVM이 원하는 것을 제공합니다. 시스템 루비를 안전하게 유지하고 현지화 된 루비와 루비 젬을 설치합니다. rvm에서 언제든지 루비의 모든 버전을 설치/제거 할 수 있으며 시스템 루비에 영향을 미치지 않습니다. 어느 날 시스템 1을 제외한 모든 루비를 제거하려면 먼저 RVM을 사용하여 루비를 제거한 다음 rvm을 제거하십시오.

여기에서 RVM 설치 : RVM 설치 https://rvm.io/rvm/install/

는 루비에게 루비를 설치합니다. 원하는 경우 다른 버전을 설치할 수 있습니다. 당신을 제거 할 경우 단순히 rvm remove ruby-1.9.3-p194

당신은 당신이 .rvmrc 파일이 필요합니다 rvm list

지역화 gemsets

를 사용하여 정확한 루비 버전을 얻을 수 있습니다 실행합니다.

.rvmrc를 만드는 프로젝트 디렉토리를 입력하고 다음 명령을 실행하려면 다음 디렉토리를 다시 입력 그런 rvm --create --rvmrc [email protected]

을 그리고 그것은 .rvmrv 파일을 신뢰하도록 요청합니다 당신은 그것을 믿을 수있어. 이제 bundle install을 실행하면 gemset 디렉토리에 현지화 된 보석 세트가 설치됩니다 (대부분 ~ 경로에 있음).

참고 : ruby-1.9.3-p194 당신이 RVM은 당신이 필요로하는 것입니다 rvm list

2

에서 발견 정확하게하는 이름과 일치하는지 확인하십시오. 모든 일은 명령 행에서 수행 할 수 있으며 언제든지 제거 할 준비가 될 것입니다.

Xcode는 필요하지 않습니다. 그러나 양조가 될 수 있습니다. brew가 있으면 apple-gcc42를 먼저 설치하십시오. Xcode 4.2 이상의 llvm-gcc는 루비 컴파일에 적합하지 않습니다.

그런 다음 rvm을 설치하십시오. rvm 공식 사이트의 단계를 따르면 쉽게됩니다. 설치 한 후 rvm requirements을 먼저 시도하십시오. 이 명령은 루비를 빌드하는 데 필요한 것을 알려줍니다. readline과 같은 일부 libs는 컴퓨터에 없을 수도 있습니다.

모든 요구 사항이 충족되면 rvm install 1.9.3은 루비 1.9를 설치합니다.3을 컴퓨터에 설치하면 몇 분이 걸립니다. rvm list known에 루비 버전을 설치할 수 있습니다. 그리고 rvm list은 로컬 버전을 보여줍니다.

rvm default some_version을 사용하여 기본값을 설정하십시오. 시스템 설치와 충돌하지 않습니다. rvm use some_version은 루비 버전을 특정 버전으로 변경합니다.

설치 한 모든 항목은 보석을 포함하여 기본적으로 ~/.rvm/에 보관됩니다.

rvm을 제거 할 필요가 없습니다. 그러나 직접 제거하여 쉽게 수행 할 수 있습니다.

+0

최근에 rvm이 자동으로 최신 루비 버전을 설치합니다 : – HungryCoder

+0

"Xcode 4.2 이상에서는 llvm-gcc가 제대로 작동하지 않아 루비를 컴파일 할 수 없습니다"라는 오류가 잘못되었습니다. 1.9.3-p125부터 Ruby는 LLVM으로 컴파일을 지원합니다. –

+0

Andrew it "works"는 모든 것이 작동한다는 것을 의미하지는 않습니다. 적어도 1.9.3-p194에 대한 Fibers와 관련된 알려진 문제가 있으며 1.9.3-p125는 다른 재료에 많은 문제점이 있으므로 (p194가 출시 된 이유이기도 함) 추가적으로 clang/llvm을 업데이트 한 후에도 컴파일 결과가 항상 동일한 결과를 산출하지는 않으므로 다른 임의의 문제가 발생할 수 있습니다. clang 최적화는 공격적입니다. – mpapis

관련 문제