ruby-debug with Ruby 1.9.3?
Ruby on-RailsRubyRuby 1.9.3Ruby DebugRuby on-Rails Problem Overview
I just updated to Ruby 1.9.3p0 and Rails 3.1.1. Now when I try to launch the server, it complains that I should install ruby-debug
, even though it's already installed.
% 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 my Gemfile I have
# see: http://stackoverflow.com/questions/1083451/debugging-in-ruby-1-9
gem 'ruby-debug-base19', "0.11.24"
gem 'ruby-debug19', "0.11.6"
Is it possible to run debug with the latest version of Ruby?
Ruby on-Rails Solutions
Solution 1 - Ruby on-Rails
Update (April 28, 2012)
Try the new debugger gem as a replacement for ruby-debug.
Update (March 2, 2012)
Installation of linecache19 and ruby-debug-base19 can be easily done with:
bash < <(curl -L https://raw.github.com/gist/1333785)
Original answer
Have you looked at ruby-debug19 on ruby-1.9.3-preview1?
> Here's a temporary solution:
> http://blog.wyeworks.com/2011/11/1/ruby-1-9-3-and-ruby-debug
>
> Excerpt from the site:
>
> First download linecache19-0.5.13.gem and
> ruby-debug-base19-0.11.26.gem from
> http://rubyforge.org/frs/?group_id=8883, then …
>
> $ 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
Solution 2 - Ruby on-Rails
Installation of linecache19 and ruby-debug-base19 can be easily done with:
bash < <(curl -L https://raw.github.com/gist/1333785)
Solution 3 - Ruby on-Rails
Someone else posted in a comment to try Pry, which is what I did. This is what's necessary for 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'
Immediately after installing I notice my .irbrc
doesn't load, so I don't get pretty console output. I also added this to my '~/.pryrc'
# setting up pry to have irb helpers like reload!
if defined?(Rails) && Rails.env
extend Rails::ConsoleMethods
end
Pry has some nice features that I've wanted to check out, and I may yet return to ruby-debug once there's a simple way to integrate it into a Rails project for Ruby 1.9.3. I can run the curl command from the other answers, but this is something I'll have to point my teammates to for our Rails project, so it doesn't scale well IMO.
Solution 4 - Ruby on-Rails
Maybe not the definitive answer to this question, but I was lead here by a chain of closed duplicates.
For me the problem was that I run a project in both ruby 1.8 and ruby 1.9, and my Gemfile needed this change:
gem 'debugger', :require => 'ruby-debug', :platforms => :mri_19
gem 'ruby-debug', :platforms => :mri_18
Now it works for both rubies.
For more info see here: http://gembundler.com/man/gemfile.5.html#PLATFORMS-platforms-
Solution 5 - Ruby on-Rails
For Windows Users:
First Download :linecache19-0.5.13.gem and ruby-debug-base19-0.11.26.gem From : http://rubyforge.org/frs/?group_id=8883&release_id=46303
Assumption: Ruby is in c:\Ruby1.93
put the gem files downloaded to c:\temp (linecache19-0.5.13.gem and ruby-debug-base19-0.11.26.gem)
then execute from command line: >gem install c:\temp\linecache19-0.5.13.gem > >gem install 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
Solution 6 - Ruby on-Rails
BTW, if you use the newest patch for ruby1.9.3 (falcon, https://gist.github.com/1688857), use following commands
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
Solution 7 - Ruby on-Rails
See my answer here : Ruby-debug not working - Stack Overflow
It's about getting Ruby debugging to work with the following setup
-
Mac OS X Lion 10.7.2
-
Aptana Studio 3 (Build 3.0.8.201201201658)
-
Using rvm, in my project working directory I have a .rvmrc stating:
rvm use ruby-1.9.3-p0@mygemset
Basically, I had to use :
linecache19 (0.5.13)
ruby-debug-base19x (0.11.30.pre10)
ruby-debug-ide (0.4.16)
Note that I'm not using ruby-debug-base19 but ruby-debug-base19x
I hope this helps!
-- Freddy
Solution 8 - Ruby on-Rails
Also you need to check if the gem 'ruby_source_code' is already installed.
Solution 9 - Ruby on-Rails
If you don't have rvm and assuming you ruby installation is in /usr/local/ruby-1.9.3-po your can use this command:
curl -L https://raw.github.com/gist/1533750 | sudo /bin/bash