2012-09-19 6 views
0

인터넷 연결없이 Linux 상자에 Rails 3.2.8을 설치하려고합니다. 관련된 보석 패키지를 수동으로 모두 다운로드하여 리눅스 박스에 복사했습니다. 이러한 패키지 중 일부를 설치하려고하면 오류가 발생합니다. 예 :gem 1.8.23 레일 설치 3.2.8 실패, 종속성을 해결할 수 없습니다.

[[email protected] gems]$ sudo /usr/local/bin/gem install --local ./activemodel-3.2.8.gem 
ERROR: While executing gem ... (Gem::DependencyError) 
    Unable to resolve dependencies: activemodel requires builder (~> 3.0.0) 

이상한 것은이 방법으로 일부 패키지를 설치할 수 있다는 것입니다. 예 : 빌더이 이미 설치되었습니다. 필요한 모든 종속 항목이 있습니다.

어떻게 의존성을 해결할 수 없습니까?

내 환경 :

Ruby: ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux] 
Rubygem: 1.8.23 

내 설치 보석 :

[[email protected] gems]$ gem list 

*** LOCAL GEMS *** 

activesupport (3.2.8) 
arel (3.0.2) 
bigdecimal (1.1.0) 
builder (3.1.3) 
bundler (1.2.0) 
erubis (2.7.0) 
hike (1.2.1) 
i18n (0.6.1) 
io-console (0.3) 
journey (1.0.4) 
json (1.7.5) 
mail (2.4.4) 
mime-types (1.19) 
minitest (2.5.1) 
multi_json (1.3.6) 
polyglot (0.3.3) 
rack (1.4.1) 
rack-cache (1.2) 
rack-ssl (1.3.2) 
rack-test (0.6.1) 
rake (0.9.2.2) 
rdoc (3.9.4) 
sprockets (2.5.0) 
thor (0.16.0) 
tilt (1.3.3) 
treetop (1.4.10) 
tzinfo (0.3.33) 

답변

1

Rubygems 버전이 문제가 아닌 것처럼 보입니다.

레일이 보석 작성기 ~> 3.0.0을 필요로하지만 일치하지 않는 3.1.3이 있습니다 (~>는 3.1.x가 아니라 3.0.x와 일치 함을 의미합니다). 빌더 3.0.3을 설치해야합니다.

또 다른 가능성은 Gemfile에 빌더 3.1.x가 필요한 다른 보석이있어 충돌을 일으킬 수 있습니다. Gemfile을 제공했다면 도움이 될 것입니다.

+0

감사합니다. 빌더 3.0.3으로 변경하면 완료됩니다. BTW, 조금 더 자세히 설명해 주시겠습니까? ****> 2.1.3 *** –

+0

보석 버전의 마지막 숫자는 같거나 클 수 있지만 다른 것은 정확히 일치해야 함을 의미합니다. ** ~ 2.1.3 **은 2.1.3, 2.1.4 등과 일치하지만 2.2.x, 2.3.x 등과는 일치하지 않습니다. ** ~ 2.1과 같이 사용할 수도 있습니다 ** ** . 이 2.x.x는 일치하지만 3.x.x는 일치하지 않습니다 http://docs.rubygems.org/read/chapter/16#page74 – khustochka

+0

알찬 글씨를 입력하십시오. Khustochka 다시 고마워. –

1

시도 최신 젬로 업그레이드 : 의존성

gem update --system 

그리고 설치 레일 :

gem install rails --include-dependencies 
+0

주제 시동기는이 상자에 인터넷 연결이 없다고 말합니다. 또한 rubygems 1.8.23은 그리 오래되지 않습니다 (현재보다 오래된 패치는 하나뿐입니다). 나를 위해 레일은 rubygems 1.8.11 완벽하게 작동합니다. – khustochka

관련 문제