
ターゲットフォルダ内で実行しようとすると、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
ユーザーごとに ( ) インストールされます。~/.gem/ruby/
/usr/lib/ruby/gems/
これは、Arch で gem を管理する最良の方法と考えられています。そうしないと、Pacman によってインストールされた gem に干渉する可能性があります。
gem
フラグを付加して root としてコマンドを実行することで、システム全体に Gem をインストールできます。このフラグは、(システム全体) または(ユーザーごと、システム全体を上書き)で--no-user-install
置き換えることでデフォルトとして設定できます。--user-install
--no-user-install
/etc/gemrc
~/.gemrc
ターミナルに入力
sudo gem install sass --no-user-install
ruby gemsについては、arch wikiをご覧ください。ユーザーごとまたはシステム全体にgemをインストールする方法をご覧ください。
答え2
sudo を使用して gem をインストールしようとしていますが、システムはユーザーのパスを認識していますが、sudo ユーザーのパスを認識していません。
~/.bashrc
これを解決するには、またはファイルに次の行を追加します.~/zshrc
。
PATH="$(ruby -e 'print Gem.user_dir')/bin:$PATH"
コマンドを使用してsource
プロファイル ファイルを更新するか、ターミナルを再度開きます。
zshを使用する場合:
source ~/.zshrc
またはbashで
source ~/.bashrc
この方法では、次の例のように、sudo なしで gem をインストールします。
gem install rspec