web-dev-qa-db-fra.com

bundle: commande non trouvée

Je suis hébergé sur un vps, Ubuntu 10.04, Rails 3, Ruby et MySQL installés correctement en suivant quelques tutoriels Si j'exécute bundle check ou bundle install j'obtiens l'erreur '-bash: bundle: command not found'. De gem list --local je vois que «bundler (1.0.2, 1.0.0)» est installé.

Je ne sais pas ce qui ne va pas ...

gem environment renvoie:

 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/

et echo $PATH renvoie:

/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

et which gem renvoie:

/usr/bin/gem

locate bundle renvoie:

/opt/Ruby-enterprise-1.8.7-2010.02/lib/Ruby/gems/1.8/
121
raphael_turtle

Vous devez ajouter le répertoire exécutable Ruby gem à votre chemin

export PATH=$PATH:/opt/Ruby-enterprise-1.8.7-2010.02/bin
79
Peter Brown

Mon problème était que je l'ai fait:

Sudo gem install bundler

Donc, je m'étais installé en tant que root plutôt que moi-même. J'ai donc désinstallé en tant que root, puis installé en tant que moi-même:

Sudo gem uninstall bundler
gem install bundler
rbenv rehash

(dernière commande pour si vous utilisez rbenv)

Et ça a fonctionné. Le chemin "correct" était dans .bashrc (ou un autre profil Shell), du moins selon

$PATH
=> zsh: /Users/myself/.rbenv/shims:/Users/myself/.rbenv/bin: ... etc

mais il s'attendait à ce qu'il soit installé pour moi-même - pas pour root. Dans mon cas, son lieu d’installation légitime est ~/.rbenv/versions/1.9.3-p194/lib/Ruby/gems/1.9.1/gems/bundler

179
xxjjnn

... aussi pour Debian GNU/Linux 6.0 :)

export PATH=$PATH:/var/lib/gems/1.8/bin
25
Lars Moelleken

J'ai fait ceci (Ubuntu au plus tard en mars 2013 [je pense :)]):

Sudo gem install bundler

Le crédit va à Ray Baxter .

Si vous avez besoin de gemme, j'ai installé Ruby de cette façon (bien que cela soit chronologiquement éprouvant):

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
9
Cody

J'exécute Ubuntu 11.10 et l'exécutable de bundle était situé dans:

/var/lib/gems/1.8/bin
3
spectralsun

Le chemin probablement distro-proof ajoute ceci à votre .bashrc ou .zshrc, quel que soit votre shell: 

PATH="$(Ruby -e 'print Gem.default_dir')/bin:$PATH"

ou si vous avez installé vos gemmes au niveau utilisateur, utilisez:

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

Étape 1: assurez-vous que vous êtes bien sur le chemin d'accès actuel. Par exemple, espace de travail/blog $: Étape 2: entrez la commande suivante: gem install bundler . maintenant

1
unedujoe

Ma solution consistait à choisir une version de Ruby pour ce dépôt.

Exemple: chruby 2.2.2 ou 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/.........
1
Mark Evans

Assurez-vous que rbenv rehash lors de l'installation de différents rubis

0
Peter

Sur mon installation Arch Linux, des gems ont été installés dans le répertoire ~/.gem/Ruby/2.6.0/bin s'il est installé en tant qu'utilisateur, ou /root/.gem/Ruby/2.6.0/bin s'il est installé via Sudo. Il suffit d’ajouter celui qui convient à votre variable d’environnement $PATH:

export PATH=$PATH:/home/your_username/.gem/Ruby/2.6.0/bin
0
Ginglis

Je pense que le fichier exécutable est sur:

/opt/Ruby-enterprise-1.8.7-2010.02/lib/Ruby/gems/1.8/gems/bin et ce n'est pas dans votre $ PATH

0
shingara

Vous pouvez également créer un lien symbolique:

ln -s /opt/Ruby-enterprise-1.8.7-2010.02/lib/Ruby/gems/1.8/gems/bin/bundle /usr/bin/bundle
0
ideaoforder

J'ai eu exactement le même problème et j'ai pu le résoudre en exécutant 

rbenv rehash

Après cela, bundle a fonctionné comme prévu. En jetant un coup d'œil à l'entrée du wiki rbenv, il est mentionné que rehash doit être exécuté lorsqu'un joyau installé fournit des commandes.

Installe des correctifs pour tous les exécutables Ruby connus de rbenv (c.-à-d., ~/.Rbenv/versions// bin/). Exécutez cette commande après avoir installé un nouveau fichier version de Ruby, ou installez une gemme fournissant des commandes.

Apparemment, c'est un tel désagrément que certaines personnes ont écrit un joyau pour s'assurer que vous n'avez plus jamais besoin de courir rehash . rbenv-gem-rehash

0
Dan Bradbury