FreeBSD가 설치되어 있음에도 불구하고 "ruby: 명령을 찾을 수 없습니다"

FreeBSD가 설치되어 있음에도 불구하고 "ruby: 명령을 찾을 수 없습니다"

방금 한동안 사용하지 않은 FreeBSD 컴퓨터에서 Ruby 스크립트를 실행하려고 시도했는데 "ruby: 명령을 찾을 수 없습니다"라는 메시지가 표시되었습니다. 그래서 이전에는 설치하지 않았던 것 같아요. /usr/ports/lang/ruby22로 이동하여 make install clean을 실행합니다. 이는 Ruby22가 이미 설치되어 있음을 나타냅니다.

그런 다음 실제로 설치되었음을 보여주는 pkg version -v를 수행했습니다. 그런 다음 어떤 이유로 $PATH에서 제거된 bin 디렉토리가 있을 수 있다고 생각하여 make deinstall을 수행한 다음 make install을 수행했습니다. 정상적으로 설치되었다고 하는데 여전히 "ruby: 명령을 찾을 수 없습니다" 오류가 발생합니다.

더 자세히 조사해 보면 /usr/local/bin/ruby22 실행 파일이 설치됩니다. 이에 대한 심볼릭 링크를 만들 수 있을 것 같지만... 여기에 뭔가 문제가 있는 걸까요? 내가 수행하지 않은 몇 가지 설치 단계를 통해 내가 이 특정 버전의 Ruby를 시스템의 기본 "ruby"로 사용하고 싶다는 사실을 FreeBSD에 알릴 수 있었습니까?

중요한 경우 이것은 10.1 RELEASE amd64이며 설치된 모든 패키지와 마찬가지로 포트 트리가 완전히 최신 상태입니다.

답변1

보고서에 따르면 /usr/ports/UPDATING:20150301현재 Ruby의 기본 버전은 2.1입니다. 2.2를 기본값으로 사용하려면 다음 DEFAULT_VERSIONS노브를 업데이트해야 합니다 /etc/make.conf.

DEFAULT_VERSIONS+=ruby=2.2

그런 다음 설치된 바이너리와 스크립트가 예상한 이름(즉, 버전 접미사가 없는지)을 갖도록 Ruby 2.2를 다시 설치해야 합니다.

관련 정보