Je viens de mettre à jour vers Ruby 1.9.3p0 et Rails 3.1.1. Maintenant, lorsque j'essaie de lancer le serveur, il se plaint que je devrais installer Ruby-debug
, même s'il est déjà installé.
% Rails server --environment=development --debug
=> Booting WEBrick
=> Rails 3.1.0 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
You need to install Ruby-debug to run the server in debugging mode. With gems, use 'gem install Ruby-debug'
Exiting
Dans mon Gemfile j'ai
# see: http://stackoverflow.com/questions/1083451/debugging-in-Ruby-1-9
gem 'Ruby-debug-base19', "0.11.24"
gem 'Ruby-debug19', "0.11.6"
Est-il possible d'exécuter le débogage avec la dernière version de Ruby?
Essayez le nouveau débogueur gem en remplacement de Ruby-debug.
( crédit à @ryanb )
L'installation de linecache19 et Ruby-debug-base19 peut être facilement effectuée avec:
bash < <(curl -L https://raw.github.com/Gist/1333785)
Avez-vous regardé Ruby-debug19 sur Ruby-1.9.3-preview1 ?
Voici une solution temporaire: http://blog.wyeworks.com/2011/11/1/Ruby-1-9-3-and-Ruby-debug
Extrait du site:
Téléchargez d'abord linecache19-0.5.13.gem et Ruby-debug-base19-0.11.26.gem depuis http://rubyforge.org/frs/?group_id=888 , puis…
$ gem install linecache19-0.5.13.gem Building native extensions. This could take a while... Successfully installed linecache19-0.5.13 1 gem installed $ gem install Ruby-debug-base19-0.11.26.gem -- --with-Ruby-include=/Users/santiago/.rbenv/source/Ruby-1.9.3-p0 Building native extensions. This could take a while... Successfully installed Ruby-debug-base19-0.11.26 1 gem installed $ irb irb(main):001:0> require 'Ruby-debug' => true
L'installation de linecache19 et Ruby-debug-base19 peut être facilement effectuée avec:
bash < <(curl -L https://raw.github.com/Gist/1333785)
Quelqu'un d'autre a posté un commentaire pour essayer Pry, c'est ce que j'ai fait. Voici ce qui est nécessaire pour Rails:
# Gemfile
gem 'pry-Rails'
# In your Rails Project where you want a 'debugger'
puts 'i want to insert some code between this'
binding.pry
puts 'and this'
Immédiatement après l'installation, je remarque mon .irbrc
ne se charge pas, donc je n'ai pas assez de sortie console. J'ai également ajouté ceci à mon '~/.pryrc'
# setting up pry to have irb helpers like reload!
if defined?(Rails) && Rails.env
extend Rails::ConsoleMethods
end
Pry a quelques fonctionnalités intéressantes que j'ai voulu vérifier, et je reviendrai peut-être encore sur Ruby-debug une fois qu'il y aura un moyen simple de l'intégrer dans un projet Rails pour Ruby 1.9.3. Je peux exécuter la commande curl à partir des autres réponses, mais c'est quelque chose que je vais devoir indiquer à mes coéquipiers pour notre projet Rails, donc il ne fonctionne pas 't échelle bien IMO.
Peut-être pas la réponse définitive à cette question, mais j'étais mené ici par une chaîne de doublons fermés.
Pour moi, le problème était que j'exécutais un projet dans les deux Ruby 1.8 et Ruby 1.9, et mon Gemfile avait besoin de ce changement:
gem 'debugger', :require => 'Ruby-debug', :platforms => :mri_19
gem 'Ruby-debug', :platforms => :mri_18
Maintenant, cela fonctionne pour les deux rubis.
Pour plus d'informations, voir ici: http://gembundler.com/man/gemfile.5.html#PLATFORMS-platforms-
Premier téléchargement: linecache19-0.5.13.gem et Ruby-debug-base19-0.11.26.gem De: http://rubyforge.org/frs/?group_id=8883&release_id=463
Hypothèse: Ruby est dans c:\Ruby1.93
placez les fichiers gem téléchargés dans c:\temp (linecache19-0.5.13.gem et Ruby-debug-base19-0.11.26.gem)
puis exécutez à partir de la ligne de commande:
installation de gem c:\temp\linecache19-0.5.13.gem
installation de gemme c:\temp\Ruby-debug-base19-0.11.26.gem - --with-Ruby-include = C:\Ruby1.93\include\Ruby-1.9.1\Ruby-1.9.3-p0
BTW, si vous utilisez le dernier patch pour Ruby1.9.3 (falcon, https://Gist.github.com/1688857 ), utilisez les commandes suivantes
wget http://rubyforge.org/frs/download.php/75414/linecache19-0.5.13.gem
wget http://rubyforge.org/frs/download.php/75415/Ruby-debug-base19-0.11.26.gem
gem install linecache19-0.5.13.gem
## with rvm:
gem install Ruby-debug-base19-0.11.26.gem -- --with-Ruby-include=$HOME/.rvm/src/Ruby-1.9.3-p0-falcon
## with rbenv (this is a guess):
gem install Ruby-debug-base19-0.11.26.gem -- --with-Ruby-include=$HOME/.rbenv/source/Ruby-1.9.3-p0-falcon
Voir ma réponse ici: Ruby-debug ne fonctionne pas - Stack Overflow
Il s'agit de faire fonctionner le débogage Ruby avec la configuration suivante
En utilisant rvm, dans mon répertoire de travail de projet, j'ai un .rvmrc indiquant:
rvm use Ruby-1.9.3-p0@mygemset
Fondamentalement, je devais utiliser:
linecache19 (0.5.13)
Ruby-debug-base19x (0.11.30.pre10)
Ruby-debug-ide (0.4.16)
Notez que je n'utilise pas Ruby-debug-base19 mais Ruby-debug-base19x
J'espère que ça aide!
- Freddy
Si vous n'avez pas rvm et en supposant que vous Ruby est dans /usr/local/Ruby-1.9.3-po, vous pouvez utiliser cette commande:
curl -L https://raw.github.com/Gist/153375 | Sudo/bin/bash
Vous devez également vérifier si la gemme 'Ruby_source_code' est déjà installée.