Vps、ubuntu 10.04、Rails 3、Ruby、およびいくつかのチュートリアルに従って正しくインストールされたmysqlでホストしています。 bundle check
またはbundle install
を実行すると、エラー「-bash:bundle:command not found」が表示されます。 gem list --local
から「bundler(1.0.2、1.0.0)」がインストールされていることがわかります。
何が悪いのか分かりません...
gem environment
は以下を返します。
RubyGems Environment:
- RUBYGEMS VERSION: 1.3.7
- Ruby VERSION: 1.8.7 (2010-04-19 patchlevel 253) [i686-linux]
- INSTALLATION DIRECTORY: /opt/Ruby-enterprise-1.8.7-2010.02/lib/Ruby/gems/1.8
- Ruby EXECUTABLE: /opt/Ruby-enterprise-1.8.7-2010.02/bin/Ruby
- EXECUTABLE DIRECTORY: /opt/Ruby-enterprise-1.8.7-2010.02/bin
- RUBYGEMS PLATFORMS:
- Ruby
- x86-linux
- GEM PATHS:
- /opt/Ruby-enterprise-1.8.7-2010.02/lib/Ruby/gems/1.8
- /root/.gem/Ruby/1.8
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
およびecho $PATH
は以下を返します。
/opt/myruby/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/bin/gem:/opt/Ruby-enterprise-1.8.7-2010.02/lib/Ruby/gems/1.8/gems/:/root/.gem/Ruby/1.8
およびwhich gem
は以下を返します。
/usr/bin/gem
locate bundle
は以下を返します。
/opt/Ruby-enterprise-1.8.7-2010.02/lib/Ruby/gems/1.8/
Ruby gem実行可能ディレクトリをパスに追加する必要があります
export PATH=$PATH:/opt/Ruby-enterprise-1.8.7-2010.02/bin
私の問題は、私がやったことでした:
Sudo gem install bundler
したがって、私は自分自身ではなくルートとしてインストールしました。だから私はルートとしてアンインストールしてから、自分でインストールしました:
Sudo gem uninstall bundler
gem install bundler
rbenv rehash
(rbenvを使用している場合の最後のコマンド)
そしてそれは働いた。 「正しい」パスwas.bashrc
(または他のシェルプロファイル)で、少なくとも
$PATH
=> zsh: /Users/myself/.rbenv/shims:/Users/myself/.rbenv/bin: ... etc
しかし、ルートではなく自分用にインストールされることを期待していました。私の場合、正当なインストール場所は~/.rbenv/versions/1.9.3-p194/lib/Ruby/gems/1.9.1/gems/bundler
です
... Debian GNU/Linux 6.0の場合も:)
export PATH=$PATH:/var/lib/gems/1.8/bin
私はこれを行いました(2013年3月現在の最新のUbuntu [と思う:)]):
Sudo gem install bundler
クレジットは Ray Baxter になります。
Gemが必要な場合は、Rubyをこの方法でインストールしました(これは慢性的に負担がかかりますが)。
mkdir /tmp/Ruby && cd /tmp/Ruby
wget http://ftp.Ruby-lang.org/pub/Ruby/1.9/Ruby-1.9.3-p327.tar.gz
tar xfvz Ruby-1.9.3-p327.tar.gz
cd Ruby-1.9.3-p327
./configure
make
Sudo make install
私はubuntu 11.10を実行しており、バンドル実行可能ファイルは次の場所にありました:
/var/lib/gems/1.8/bin
おそらくあなたのシェルが何であれ、これをあなたの.bashrcまたは.zshrcに追加することは、配布防止パスです:
PATH="$(Ruby -e 'print Gem.default_dir')/bin:$PATH"
または、gemをユーザー全体にインストールした場合は、次を使用します。
PATH="$(Ruby -e 'print Gem.user_dir')/bin:$PATH"
ステップ1:実際のワークスペースのパス上にいることを確認します。たとえば、workspace/blog $:ステップ2:コマンドを入力:gem install bundler。ステップ3:これで、バンドルインストールまたはバンドルアップデートの準備が整いました。
私の解決策は、そのリポジトリ用にRubyのバージョンを選択したことを確認することでした。
例:chruby 2.2.2
またはrvm use 2.2.2
λ bundle install
zsh: command not found: bundle
λ Ruby -v
Ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]
### Notice the system Ruby version isn't included in chruby
λ chruby
Ruby-1.9.3-p551
Ruby-2.1.2
Ruby-2.2.1
### Select a version via your version manager
λ chruby 1.9.3
### Ensure your version manager properly selects a version (*)
λ chruby
* Ruby-1.9.3-p551
Ruby-2.1.2
Ruby-2.2.1
λ bundle install
Fetching gem metadata from https://rubygems.org/.........
異なるルビーをインストールするときは必ずrbenv rehash
を実行してください
Arch Linuxのインストールでは、ユーザーとしてインストールした場合は~/.gem/Ruby/2.6.0/bin
ディレクトリに、Sudo
を介してインストールした場合は/root/.gem/Ruby/2.6.0/bin
ディレクトリにgemがインストールされました。適切なものを$PATH
環境変数に追加するだけです:
export PATH=$PATH:/home/your_username/.gem/Ruby/2.6.0/bin
バンドル実行可能ファイルはオンになっていると思います:
/opt/Ruby-enterprise-1.8.7-2010.02/lib/Ruby/gems/1.8/gems/bin
で、$ PATHにない
シンボリックリンクを作成することもできます:
ln -s /opt/Ruby-enterprise-1.8.7-2010.02/lib/Ruby/gems/1.8/gems/bin/bundle /usr/bin/bundle
私はまったく同じ問題があり、実行することでそれを解決することができました
rbenv rehash
その後、bundle
は期待どおりに機能しました。 rbenv wikiエントリを見ると、インストールされたgemがコマンドを提供するときにrehashを実行する必要があることに言及しています。
Rbenvが認識しているすべてのRuby実行可能ファイル(つまり、〜/ .rbenv/versions // bin /)にシムをインストールします。 Rubyの新しいバージョンをインストールした後、またはコマンドを提供するgemをインストールした後に、このコマンドを実行します。
どうやらこれは非常に面倒なので、rehash
を再度実行する必要がないことを確認するために、gemを書いた人もいます。 rbenv-gem-rehash