Sto lavorando in kali-linux (una distro strega linuxè la continuazione di Back-Track, basato su Ubuntu, che ora è basato su Debian wheezy) per alcuni test di penetrazione. Tutto stava funzionando bene, fino a quando ho deciso di aggiornare i miei strumenti di sistema. Ora ogni volta che cerco di eseguire uno strumento basato sul rubino, mi dà la caccia:
Could not find gem "ruby-progressbar (>= 1.1.0) ruby" in the gems available on this machine.
Run `bundle install` to install missing gems.
Procedo a correre bundle install
ma poi arriva Bundler::GemfileNotFound
errore.
Kali usa di default ruby, per usare le gemme. Il software non richiede "alcun altro pacchetto, ma ruby sembra non completamente configurato / installato per il problema in questione.
$ ruby --version
ruby 1.9.3p194 (2012-04-20 revision 35410) [i486-linux]
$ rvm
bash: rvm: command not found
$ rbenv
bash: rbenv: command not found
risposte:
20 per risposta № 1Ho affrontato lo stesso problema quando stavo provando a bundle install
senza rendermi conto che non ero nella directory del progetto. Assicurati di essere nella directory del progetto corrente.
3 per risposta № 2
per evitare questo errore dovresti essere alla radice della tua applicazione e creare GemFile e specificare tutte le gemme necessarie al suo interno ed eseguire l'installazione del pacchetto
1 per risposta № 3
Il problema era che, per qualche strano motivo, Ruby non lo aveva rilevato bundler
è stato installato, anche se il gestore pacchetti lo dice.
$ apt-cache policy bundler
bundler:
Installed: 1.3.5-2
Candidate: 1.3.5-2
$ bundle --version
Bundler::GemfileNotFound
Io semplicemente corro gem install bundler
poi bundler install
come root nel percorso root dello strumento e tutto funziona come fascino.
0 per risposta № 4
Usi rvm
o rbenv
? Se è così, assicurati di utilizzare una versione particolare di rubino.
Per rvm, rvm list
e cerca un'indicazione accanto alla tua versione rubino. Se quello corretto non è elencato, esegui rvm install x.y.z
. Se quello corretto non è selezionato, esegui rvm use x.y.z
Se vuoi separare le tue gemme per un determinato progetto, crea un gemset
. Altrimenti, dovresti essere bravo a farlo.
Correre gem install bundler
. Non dovresti farlo come sudo. Questo installerà il bundler nel rset gemma predefinito o nel gemset selezionato.
Bundler ora dovrebbe essere disponibile e può essere eseguito utilizzando bundle
. Questo è lo stesso di bundle install
.
0 per risposta № 5
Prova questo:
sudo ln -s /var/lib/gems/1.8/bin/bundle /bin/bundle
sudo ln -s /var/lib/gems/1.8/bin/bundler /bin/bundler
Ha funzionato per me in Debian.