Ruby-Debug mit Ruby 1.9.3?

Ich habe gerade auf Ruby 1.9.3p0 und Rails 3.1.1 aktualisiert. Jetzt, wenn ich versuche, den Server zu starten, beschwert er sich, dass ich ruby-debug installieren sollte, obwohl es bereits installiert ist.

 % 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 

In meinem Gemfile habe ich

 # see: http://stackoverflow.com/questions/1083451/debugging-in-ruby-1-9 gem 'ruby-debug-base19', "0.11.24" gem 'ruby-debug19', "0.11.6" 

Ist es möglich, mit der neuesten Version von Ruby zu debuggen?

Update (28. April 2012)

Probieren Sie das neue Debugger- Juwel als Ersatz für ruby-debug aus.

( Kredit für @ryanb )


Update (2. März 2012)

Die Installation von linecache19 und ruby-debug-base19 kann einfach durchgeführt werden mit:

 bash < <(curl -L https://raw.github.com/gist/1333785) 

( Kredit an @fredostarr )


Ursprüngliche Antwort

Hast du ruby-debug19 auf ruby-1.9.3-preview1 angeschaut ?

Hier ist eine temporäre Lösung: http://blog.wyeworks.com/2011/11/1/ruby-1-9-3-and-ruby-debug

Auszug von der Website:

Lade zuerst linecache19-0.5.13.gem und ruby-debug-base19-0.11.26.gem von http://rubyforge.org/frs/?group_id=8883 herunter, dann ...

 $ 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 

Die Installation von linecache19 und ruby-debug-base19 kann einfach durchgeführt werden mit:

 bash < <(curl -L https://raw.github.com/gist/1333785) 

Jemand anderes hat in einem Kommentar gepostet, um Pry zu testen, was ich getan habe. Dies ist notwendig für 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' 

Sofort nach der Installation merke ich, dass meine .irbrc nicht geladen wird, also bekomme ich keine schöne Konsolenausgabe. Ich habe das auch zu meinem ‘~ / .pryrc’ hinzugefügt

 # setting up pry to have irb helpers like reload! if defined?(Rails) && Rails.env extend Rails::ConsoleMethods end 

Pry hat einige nette functionen, die ich auschecken wollte, und ich kann noch zu Ruby-Debug zurückkehren, sobald es eine einfache Möglichkeit gibt, es in ein Rails-Projekt für Ruby 1.9.3 zu integrieren. Ich kann den curl-Befehl von den anderen Antworten ausführen, aber das ist etwas, auf das ich meine Teamkollegen für unser Rails-Projekt hinweisen muss, damit es IMO nicht gut skaliert.

Vielleicht nicht die definitive Antwort auf diese Frage, aber ich wurde hier von einer Kette geschlossener Duplikate angeführt.

Für mich war das Problem, dass ich ein Projekt sowohl in Ruby 1.8 als auch in Ruby 1.9 ausführe, und meine Gemfile benötigte diese Änderung:

 gem 'debugger', :require => 'ruby-debug', :platforms => :mri_19 gem 'ruby-debug', :platforms => :mri_18 

Jetzt funktioniert es für beide Rubye.

Weitere Informationen finden Sie hier: http://gembundler.com/man/gemfile.5.html#PLATFORMS-platforms-

Für Windows Benutzer:

Erster Download: linecache19-0.5.13.gem und ruby-debug-base19-0.11.26.gem Von: http://rubyforge.org/frs/?group_id=8883&release_id=46303

Annahme: Ruby ist in c: \ Ruby1.93

Setze die heruntergeladenen Dateien in c: \ temp (linecache19-0.5.13.gem und ruby-debug-base19-0.11.26.gem)

dann von der Befehlszeile ausführen:

Gem installieren c: \ temp \ linecache19-0.5.13.gem

Gem install c: \ temp \ ruby-debug-base19-0.11.26.gem – – mit-ruby-include = C: \ Ruby1.93 \ include \ ruby-1.9.1 \ ruby-1.9.3-p0

BTW, wenn Sie den neuesten Patch für ruby1.9.3 (falcon, https://gist.github.com/1688857 ) verwenden, verwenden Sie die folgenden Befehle

 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 

Siehe meine Antwort hier: Ruby-debug funktioniert nicht – Stack Overflow

Es geht darum, Ruby-Debugging mit dem folgenden Setup zu arbeiten

  • Mac OS X 10.7.2
  • Aptana Studio 3 (Build 3.0.8.201201201658)
  • Mit rvm, in meinem Projektarbeitsverzeichnis habe ich eine .rvmrc, die besagt:

     rvm use ruby-1.9.3-p0@mygemset 

Grundsätzlich musste ich verwenden:

 linecache19 (0.5.13) ruby-debug-base19x (0.11.30.pre10) ruby-debug-ide (0.4.16) 

Beachten Sie, dass ich nicht ruby-debug-base19, sondern ruby-debug-base19x verwende

Ich hoffe das hilft!

– Freddy

Außerdem müssen Sie überprüfen, ob der Edelstein ‘ruby_source_code’ bereits installiert ist.

Überprüfen Sie: http://bugs.ruby-lang.org/issues/1857#note-8

Wenn du nicht rvm hast und annimmst, dass deine Ruby-Installation in /usr/local/ruby-1.9.3-po ist, kannst du diesen Befehl verwenden:

curl -L https://raw.github.com/gist/1533750 | sudo / bin / bash