我正处于学习Ruby的早期阶段,并希望学习如何调试gem,但我很难找到学习资源。一个简单的例子对我来说有很长的路要走。
debugger是首选调试器吗?我在哪里需要它?如何用它设置断点?
注意:我正在做出有根据的猜测,根据需要调试的gem,调试过程可能会有所不同,所以作为参考,我对debugging certain issues {{3}特别感兴趣}}
答案 0 :(得分:4)
好的,我自己想出来了。这是我采取的步骤..
我正在运行Ruby 1.9.3(通过运行ruby -v
确定),因此在测试ruby-debug和ruby-debug19后,我确定这些调试器不再被维护,或者至少没有与我安装的ruby1.9.3-p125一起正常工作。这导致我debugger。
有效的安装说明是:
$ gem install debugger -- --with-ruby-include=PATH_TO_HEADERS
我机器上的PATH_TO_HEADERS只是ruby的源位置:
/Users/myusername/.rvm/src/ruby-1.9.3-p125/
由于我特别决定调试Compass编译器,所以我做了以下事情:
$ git clone git://github.com/chriseppstein/compass.git
$ compass -v
,即13.0 lib/compass/compiler.rb
并在顶部添加了这一行:require 'debugger'; debugger
gem build compass.gemspec
sudo gem install compass-0.13.2.058ead2.gem
sudo gem uninstall compass
卸载了调试版本,并选择了与Compass 13.2相对应的编号。 关于第7步的注意事项:由于调试器与ruby-debug / ruby-debug19具有相同的调试命令,因此我能够按照现有的调试步骤进行调试。
如果您有其他调试器教程,指针,提示等,请发布它们。