Ruby-debug无法正常工作
我无法让服务器以调试模式启动:
即使我安装了所有正确的gem,服务器也拒绝启动。
$ gem install ruby-debug ERROR: Error installing ruby-debug: rbx-require-relative requires Ruby version ~> 1.8.7.
哪个不起作用,其他post说使用ruby-debug19:
David@DAVID-PC /c/triton6 $ gem install ruby-debug19 Successfully installed ruby-debug19-0.11.6 1 gem installed Installing ri documentation for ruby-debug19-0.11.6... Installing RDoc documentation for ruby-debug19-0.11.6... David@DAVID-PC /c/triton6 $ rails server --debug => Booting WEBrick => Rails 3.1.3 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
知道该怎么办?
这是我的Gemfile:
source 'http://rubygems.org' gem 'rails', '3.1.3' # Bundle edge Rails instead: # gem 'rails', :git => 'git://github.com/rails/rails.git' gem 'sqlite3' gem 'ruby-debug19' gem 'execjs' gem 'ruby-debug-ide' # Gems used only for assets and not required # in production environments by default. group :assets do gem 'sass-rails', '~> 3.1.5' gem 'coffee-rails', '~> 3.1.1' gem 'uglifier', '>= 1.0.3' end gem 'jquery-rails' # To use ActiveModel has_secure_password # gem 'bcrypt-ruby', '~> 3.0.0' # Use unicorn as the web server # gem 'unicorn' # Deploy with Capistrano # gem 'capistrano' # To use debugger # gem 'ruby-debug19', :require => 'ruby-debug' group :test do # Pretty printed test output gem 'turn', '0.8.2', :require => false end
确保你gem "ruby-debug19", :require => 'ruby-debug'
有gem "ruby-debug19", :require => 'ruby-debug'
,然后运行bundle install
🙂
编辑:添加了重要的:require =>
语句,我以前错过了
我有同样的问题(以及更多)来让Aptana Studio 3中的ruby调试工作。我的设置和程序使它工作:
- Mac OS X Lion 10.7.2
- Aptana Studio 3(Build 3.0.8.201201201658)
-
使用rvm,在我的项目工作目录中,我有一个.rvmrc说明:
rvm use ruby-1.9.3-p0@mygemset
要在Aptana Studio中进行ruby调试,我现在可以进行以下设置
-
在我的Gemfile结束时,我有:
gem "ruby-debug-base19x", "0.11.30.pre10" gem 'ruby-debug-ide'
请注意,我没有使用ruby-debug-ide19和ruby-debug19,Aptana Studio只是拒绝使用这个gem。 无论如何,它总是选择ruby-debug-ide 0.4.16。
我也没有使用ruby-debug-base19,而是使用ruby-debug-base19x。
-
要构建最新的ruby-debug-base19x,请确保指定正确的ruby上下文(include):
rvm 1.9.3-p0@mygemset do gem install --pre ruby-debug-base19x -- --with-ruby-include=/Users/Freddy/.rvm/src/ruby-1.9.3-p0
丢失rvm …不使用rvm时做。
-
不要忘记从项目工作目录中执行Bundle install(或bundle update)。 在我的终端中,当我键入’Bunle list’时,对于提到的gem,列出了以下版本:
linecache19 (0.5.13) ruby-debug-base19x (0.11.30.pre10) ruby-debug-ide (0.4.16)
-
重要提示:如果你有linecache19版本0.5.12而不是.13,请从RubyForge下载最新版本:ruby-debug19:Project Filelist 。 我将它下载到我的〜/ Downloads文件夹,因此在我的rvm上下文中构建和安装这个gem如下:
rvm 1.9.3-p0@mygemset do gem install ~/Downloads/linecache19-0.5.13.gem -- --with-ruby-include=/Users/Freddy/.rvm/src/ruby-1.9.3-p0
如果您需要安装linecache19版本0.5.13,请不要忘记再次运行’bundle update’。
- 在这之后,我在这里描述了在ide中运行调试器时的最终问题(及其解决方案):
Aptana 3 ruby调试器 – DebugThread循环中的exception:未定义的方法`is_binary_data?’
将第一个答案中提供的代码放在xml_printer.rb中的“module Debugger”语句上方。
请享用!
– 弗雷迪
关于建造ruby的说明-1.9.3-p0 。 这有点超出了问题的范围,但是由于构建这个问题(这也是一个痛苦的暗示)。 编译ruby-1.9.3.-p0给出了与openssl相关的多个编译器错误。 最好的办法是在rvm环境中安装openssl-0.9.8n软件包:
-
安装XCode 4.2后,首先需要将以下内容放在.rvmrc或.profile中:
export CC=/usr/bin/gcc-4.2
不要启用它,例如$ source~ / .rvmrc
-
在rvm环境中安装openssl-0.9.8n软件包(另请参阅RVM:Ruby Version Manager – ‘rvm pkg install openssl’ ):
rvm pkg install openssl rvm reinstall 1.9.3-p0 --with-openssl-dir=$rvm_path/usr
我想,答案已经在你的Gemfile中了。
gem 'ruby-debug19', :require => 'ruby-debug'
ruby-debug坏了。 该项目有一个新的分支,现在正在被广泛使用。 这是相同的代码,只是修复。 这个新版本现在是rails ruby on rails项目中使用的版本。
这是新的gem: https : //github.com/cldwalker/debugger
要使用它,只需将其包含在您的gem文件中即可
gem 'debugger'
这是一个提交到rails的提交链接:
让它对我有用的是:
sudo gem install ruby-debug19 gem install linecache19 gem install ruby-debug-base19 bundle update rails server -u
这是我的灵魂。 我跟着这篇文章没有成功。 🙁
我将以下gem添加到我的Gemfile中,并且== >>运行$bundle install
… working
=添加到Gemfile => gem’ruby gem 'ruby-debug-ide', '~> 0.4.22'
Installing ruby-debug-ide 0.4.22 Using sass 3.2.19 Using sass-rails 4.0.3 Using sdoc 0.4.0 Using spring 1.1.3 Using sqlite3 1.3.9 Using turbolinks 2.2.2 Using uglifier 2.5.1 Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed. -SVE1411EGXB:~/Desktop/myapp$