소스 설치 경로 문제

소스 설치 경로 문제

내 제목이 혼란스럽지 않기를 바랍니다. Ruby 1.8.7이 설치된 CentOS 5 시스템이 있습니다. 그래서 Ruby 설치와 gem/rails를 업그레이드하기 위해 저는

  • 루비 제거:sudo yum 루비 제거

  • Ruby의 최신 안정 버전을 다운로드하고 압축을 풉니다.wget...&& tar -zxf....

  • 일반적인 설치를 진행했습니다.

    • ./configure --prefix=$HOME
    • 만들다
    • sudo 설치
  • 루비 다운로드:얻다....

  • 설치 파일 실행: 루비 install.rb

이제 내 질문은 Rails를 설치하려고 하면 다음을 입력하여 설치할 수 있다는 것입니다.보석 장착 레일, 다음 메시지가 나타납니다."-bash:/usr/local/bin/gem:/usr/local/bin/ruby: 잘못된 해석기: 권한이 거부되었습니다."

따라서 (나에게) 다음 논리적 움직임은 다음과 같이 입력하는 것이었습니다.sudo gem 설치 레일, 그러나 이것은 반환됩니다"sudo: gem: 명령을 찾을 수 없습니다", 즉 내가 뭔가를 완전히 망쳤다는 의미입니다.

좀 더 많은 정보를 추가하면

루비는 어디에 있나요?:루비: /usr/lib/ruby /usr/lib64/ruby /usr/local/bin/ruby /usr/local/lib/ruby

어떤 루비: ~/빈/루비

소스에서 Ruby를 수동으로 설치하여 뭔가를 엉망으로 만들었다고 생각합니다. 아마도 --prefix=$HOME이 여기서 범인일까요?

답변1

gem실행 파일을 제공한 패키지를 제거하지 않은 것 같으 므로 해당 패키지는 여전히 존재하며 /usr/local/bin/더 이상 존재하지 않는 /usr/local/bin/ruby인터프리터를 가리키고 있습니다.

패키지를 제거하거나(이 패키지가 의존하는 Ruby 패키지도 제거했기 때문에 권장됨) . ( ~/bin또는 루트 액세스 권한이 있는 경우 를 지정하지 않고 스크립트를 다시 실행하고 , 이는 Ruby의 기본값입니다)./usr/local/binPATH./configure--prefix=${HOME}/usr/local/bin

gem쉘이 에 설치된 실행 파일을 찾을 수 있도록 모든 것을 준비한 후에 는 을 ~/bin수행할 필요가 없습니다 gem install rails. sudo(또는 에 루트를 설치한 경우 에 있는지 /usr/local/bin확인한 다음 이전에 했던 것처럼 을 실행하십시오. 시도한대로).gem/usr/local/bin/gemsudo gem install rails

아마도 더 나은 접근 방식은rvm또는rbenv, 둘 다 여러 개의 루비를 관리하는 것을 매우 쉬운 작업으로 만듭니다. 이러한 도구 중 하나를 사용하면 시스템 전체 버전을 제거하지 않고도 여러 버전의 Ruby를 설치할 수 있습니다. 이 버전은 시스템의 다른 패키지에서 제거해야 할 수도 있습니다.

관련 정보