시스템 전체 업데이트 Arch Linux 업데이트 후 Gem 설치가 실행되지 않음

시스템 전체 업데이트 Arch Linux 업데이트 후 Gem 설치가 실행되지 않음

대상 폴더 내에서 실행하려고 하면 sass --watch scss:css메시지가 반환됩니다.command not found

나는 sass가 설치되어 있다는 것을 알고 있습니다. gem list더 이상 설치되었다고 표시되지 않습니다.

실행 sudo gem install sass하고 다음 메시지를 받았습니다.

WARNING: You don't have /root/.gem/ruby/2.3.0/bin in your PATH
         gem executables will not run.

.bashrc파일로 이동합니다. 나는 가지고있다PATH="$(ruby -e 'print Gem.user_dir')/bin:$PATH"

저도 /etc/bash.bashrc혹시 모르니 넣어두었습니다. 아무것도 변하지 않습니다.

/etc/profile로 이동하여 다음을 삽입합니다.

#Setting the GEM_PATH and GEM_HOME variables may not be necessary, check 'gem env' output to verify whether both variables already exist 
 GEM_HOME=$(ls -t -U | ruby -e 'puts Gem.user_dir')
 GEM_PATH=$GEM_HOME
 export PATH=$PATH:$GEM_HOME/bin

다음으로 프로필을 다시 로드합니다.. /etc/profile

Sass를 다시 설치하려고합니다.sudo gem install sass

여전히 같은 오류 메시지가 나타납니다. gem list아직도 안 보여sass

지금은요??

답변1

기본적으로 Arch Linux에서는 를 실행할 때 gem이 시스템 전체 gem(into)가 아닌 사용자별로 (into ) 설치됩니다.~/.gem/ruby//usr/lib/ruby/gems/

이는 Arch에서 gem을 관리하는 가장 좋은 방법으로 간주됩니다. 그렇지 않으면 Pacman이 설치한 gem을 방해할 수 있기 때문입니다.

gem플래그를 추가하여 루트로 명령을 실행하여 시스템 전체에 보석을 설치할 수 있습니다 --no-user-install. 이 플래그는 in (시스템 전체) 또는 (사용자별, 시스템 전체 재정의) --user-install로 대체하여 기본값으로 설정할 수 있습니다 .--no-user-install/etc/gemrc~/.gemrc

터미널에 입력하세요

sudo gem install sass --no-user-install

루비 보석에 관한 아치 위키를 참조하세요. 사용자별 또는 시스템 전체에 gem 설치를 읽어보세요.

답변2

sudo를 사용하여 gem을 설치하려고 하는데 시스템이 사용자의 경로를 알고 있지만 sudo 사용자의 경로는 알 수 없습니다.

~/.bashrc이 문제를 해결하려면 또는 파일 에 다음 줄을 추가하세요 .~/zshrc.

PATH="$(ruby -e 'print Gem.user_dir')/bin:$PATH"

이 명령을 사용하여 source프로필 파일을 업데이트하거나 터미널을 다시 엽니다.

zsh를 사용하는 경우:

source ~/.zshrc

아니면 배쉬로

source ~/.bashrc

이런 식으로, 다음 예처럼 sudo 없이 gem을 설치하게 됩니다:

gem install rspec 

관련 정보