[RUBY-ON-RAILS] 어떻게 우분투 보석을 사용합니까?
RUBY-ON-RAILS어떻게 우분투 보석을 사용합니까?
나는 최근 우분투 9.04으로 업그레이드하고 나는 보석을 사용하여 문제가 있습니다. 나는 apt-get을을 사용하여 루비, 루비 젬과 레일을 설치했다. 레일 명령은 작업을 수행합니다.
나는 다음과 같은 Heroku가 같은 카피 스트라 노 및 기타 보석을 설치했다. 그렇게하기 위해, 나는 명령을 사용 :
sudo gem install XXX
나는 캡 명령을 사용할 때 작동하지 않습니다 :
bash: cap: command not found
그것은 다른 보석 명령과 동일합니다.
나는 보석 명령 작업을 그렇게 할 것과 특히 뭔가를해야합니까?
해결법
-
==============================
1.당신의 보석은 보석 환경 명령을 사용하여 저장되는 위치를 찾을 수 있습니다. 예를 들면 :
당신의 보석은 보석 환경 명령을 사용하여 저장되는 위치를 찾을 수 있습니다. 예를 들면 :
chris@chris-laptop:~$ gem environment RubyGems Environment: - RUBYGEMS VERSION: 1.3.2 - RUBY VERSION: 1.8.7 (2008-08-11 patchlevel 72) [i486-linux] - INSTALLATION DIRECTORY: /usr/lib/ruby/gems/1.8 - RUBY EXECUTABLE: /usr/bin/ruby1.8 - EXECUTABLE DIRECTORY: /usr/bin - RUBYGEMS PLATFORMS: - ruby - x86-linux - GEM PATHS: - /usr/lib/ruby/gems/1.8 - /home/chris/.gem/ruby/1.8 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - REMOTE SOURCES:
당신이 보면 "GEM 과정 :"/usr/lib/ruby/gems/1.8 또는 .gem 디렉토리에 내 홈 디렉토리에 섹션 당신은 보석이 내 노트북에 두 장소에 저장 될 수 있음을 알 수있다.
또한 실행이 경우는 / usr / 빈입니다 EXECUTABLE 전화 번호부에 저장되어있는 것을 볼 수 있습니다.
는 / usr / 빈 내 경로에 있기 때문에이 날 캡, Merb는, 레일 등을 실행할 수 있습니다
어떤 이유로 실행 파일 디렉토리가 경로에없는 경우에 당신은 당신의 PATH 변수를 업데이트해야합니다 (예를 들어, 그것은 /var/lib/gems/1.8/bin 경우).
당신이 bash 쉘을 사용하고 있다고 가정. 당신은 프롬프트 쉘에서 다음을 입력하여 현재 세션에 대해 신속하게이 작업을 수행 할 수 있습니다; 의 당신이 경로에 /var/lib/gems/1.8/bin 추가하려는 척하자 :
export PATH=$PATH:/var/lib/gems/1.8/bin
하고 Return 키를 누릅니다. 즉, 현재 경로의 마지막에 새로운 디렉토리를 추가합니다. $ 경로와 /var/lib/gems/1.8/bin 사이의 콜론을 참고
당신이 편집에의 .profile이나 .bashrc에 파일 중 하나를 필요로하고 파일의 끝에 같은 라인을 추가합니다 모든 세션에 대한 값을 설정합니다. 나는 보통 내가 항상 무슨 짓을했는지 그보다는 다른 이유없이 내의 .bashrc 파일을 편집합니다. 완료되면 파일을 저장 한 다음 입력하여 사용자 환경을 새로 고침 :
bash
쉘 프롬프트에서. 즉 GET 다시 읽기에 .bashrc에 원인이됩니다.
어떤 시점에서 당신은 입력하여 $ PATH의 현재 값을 확인할 수 있습니다
echo $PATH
쉘 프롬프트에서.
여기에 사용자 이름이 "크리스"내 자신의 서버 중 하나의 샘플입니다 및 기계 이름은 "크리스 - 노트북"입니다 :
chris@chris-laptop:~$ chris@chris-laptop:~$ echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games chris@chris-laptop:~$ chris@chris-laptop:~$ export PATH=$PATH:/var/lib/gems/1.8/bin chris@chris-laptop:~$ chris@chris-laptop:~$ echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/var/lib/gems/1.8/bin chris@chris-laptop:~$
루비의 여러 다른 버전을 사용하여 하이라이트 일반적인 문제를 "루비 보석은 비록 설치를로드 할 수 없습니다"; 때로는 보석 환경과 보석 경로가 동기화 얻을 :
rb(main):003:0> Gem.path => ["/opt/ruby1.9/lib/ruby1.9/gems/1.9.1"] irb(main):004:0> exit
여기에 모든 루비 프로세스는 보석 만 한 곳을 찾고 있습니다.
:~/$ gem env RubyGems Environment: - RUBYGEMS VERSION: 1.3.7 - RUBY VERSION: 1.9.1 (2009-05-12 patchlevel 129) [x86_64-linux] - INSTALLATION DIRECTORY: /opt/ruby1.9/lib/ruby/gems/1.9.1 - RUBY EXECUTABLE: /opt/ruby1.9/bin/ruby1.9 - EXECUTABLE DIRECTORY: /opt/ruby1.9/bin - RUBYGEMS PLATFORMS: - ruby - x86_64-linux - GEM PATHS: - /opt/ruby1.9/lib/ruby/gems/1.9.1 - /home/mark/.gem/ruby/1.9.1 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - REMOTE SOURCES: - http://rubygems.org/
보석 환경의 출력을주의 깊게 봐 :
- GEM PATHS: - /opt/ruby1.9/lib/ruby/gems/1.9.1
이 Gem.path에 의해 반환과 동일한 경로되지 않습니다 :
["/opt/ruby1.9/lib/ruby1.9/gems/1.9.1"]
그것은 정확히 lib 디렉토리 / ruby1.9하지만 대부분 개발자가 여러 루비 버전과 함께 일하고에 변화에 lib 디렉토리 / 루비의 원인을 말할 어렵다. 빠른 MV 또는 에선이 문제를 해결합니다.
여러 루비 버전과 작업을해야하는 경우 당신은 정말 RVM을 사용해야합니다.
-
==============================
2.@ 크리스가 언급 한 바와 같이 당신은 당신의 경로에 보석 환경을 추가해야합니다. 이 작업을하여 수행 할 수 있습니다
@ 크리스가 언급 한 바와 같이 당신은 당신의 경로에 보석 환경을 추가해야합니다. 이 작업을하여 수행 할 수 있습니다
echo 'export PATH=$PATH:/var/lib/gems/1.8/bin' | tee --append ~/.bashrc
-
==============================
3.내가 예를 들어 보석이 당신의 PATH에 있어야합니다 저장되어있는 폴더 :
내가 예를 들어 보석이 당신의 PATH에 있어야합니다 저장되어있는 폴더 :
입력하여 경로를 확인
echo $PATH
-
==============================
4.이 젬을 설치할 때, 지금 우분투 9.04에서, 나는이 문제를 가지고 seens. 나는이 젬 또는 우분투 9.04에 문제가 ... "보석 환경"의 실행 디렉토리 대신 "는 / usr / 빈"의 "/var/lib/gems/1.8/bin"입니다 것으로 나타났습니다?
이 젬을 설치할 때, 지금 우분투 9.04에서, 나는이 문제를 가지고 seens. 나는이 젬 또는 우분투 9.04에 문제가 ... "보석 환경"의 실행 디렉토리 대신 "는 / usr / 빈"의 "/var/lib/gems/1.8/bin"입니다 것으로 나타났습니다?
나는 발생하는이 솔루션은 내 $ PATH에이 일에 "/var/lib/gems/1.8/bin"을 추가하는 것입니다 : 수출 PATH는 $ PATH를 = : /var/lib/gems/1.8/bin를 하지만 어떻게 내가 내 길을 절약 할 수 있습니다 ... 저장하지 않는다?
감사...
나는 결정 : 수출 PATH = $ PATH를 넣어 : /var/lib/gems/1.8/bin을 ~ / .bashrc에에! =]
-
==============================
5.mkmf는 ruby1.9.1-dev에 패키지의 일부입니다. 이 패키지는 루비 1.9.1에 대한 확장 라이브러리에 필요한 헤더 파일이 포함되어 있습니다. 당신은 수행하여 ruby1.9.1-dev에 패키지를 설치해야합니다 :
mkmf는 ruby1.9.1-dev에 패키지의 일부입니다. 이 패키지는 루비 1.9.1에 대한 확장 라이브러리에 필요한 헤더 파일이 포함되어 있습니다. 당신은 수행하여 ruby1.9.1-dev에 패키지를 설치해야합니다 :
apt-get을 ruby1.9.1-dev에 설치 sudo는
from https://stackoverflow.com/questions/909673/how-do-i-use-gems-with-ubuntu by cc-by-sa and MIT license
'RUBY-ON-RAILS' 카테고리의 다른 글
[RUBY-ON-RAILS] 종이 클립 :: 오류 :: 레일과 MissingRequiredValidatorError 4 (0) | 2020.02.27 |
---|---|
[RUBY-ON-RAILS] 레일 / 레일 콘솔을 사용하여 객체 어떻게 목록 데이터베이스 테이블에? (0) | 2020.02.27 |
[RUBY-ON-RAILS] Postgres.app와 매버릭스에서 페이지 보석을 설치할 수 없습니다 (0) | 2020.02.27 |
[RUBY-ON-RAILS] 레일 : 어떻게 페이지의 제목을 변경하려면? (0) | 2020.02.27 |
[RUBY-ON-RAILS] 레일 모델의 기본 정렬 순서? (0) | 2020.02.27 |