[#70843] Re: [ruby-cvs:58952] hsbt:r51801 (trunk): * lib/rubygems: Update to RubyGems HEAD(fe61e4c112). — Eric Wong <normalperson@...>
hsbt@ruby-lang.org wrote:
3 messages
2015/09/17
[ruby-core:70889] How to get started with ruby-core source code development
From:
Will Senn <w_senn@...>
Date:
2015-09-23 15:14:32 UTC
List:
ruby-core #70889
Hi,
I apologize in advance if this question has been asked and answered
before. I have scoured the internet, including this group's archives and
have had no joy in finding the information I seek. Please be kind :).
What I would like to know is how to begin working with the ruby-core
source code effectively. Obviously, it can be read to reasonable effect
and understood intellectually to a large degree. I have found Ruby
Minero Aoki's book, Ruby Hacking Guide to be helpful in this regard.
However, I am interested in studying it with a debugger and this is more
challenging than it sounds. I have built the source code on my Macbook
(Yosemite), but gdb doesn't seem to work on Mac, and LLVM instructions
are vague in the wild. I have built the 1.7.3 source code on a debian
jessie VM and used eclipse to step through code where I passed the path
to irb into ruby as an argument and this "works" ok. So, with high
hopes, I built the source for 2.2.3 on the debian vm and while it built
fine, it seems to be looking for gem files. I gather, it needs an
environment variable or argument, so I will muddle on hoping to work
past that hurdle. However, I am hoping someone who is actively
developing the code will share their setup (or point me in the
appropriate direction to a howto).
Specifically, what do you use to work with the code:
Which Operating System is hosting the ruby executable?
Are there environment parameters that need to be set or passed as
arguments?
What Tools are useful (eclipse, gdb, valgrind, etc)?
How do you keep a pristine working environment for your work, chroot?
Any helpful hints on editing a c file, rerunning make, running gdb
and info func myfunc, etc. would be tremendously helpful.
Lastly, I truly appreciate the language y'all have created and look
forward to developing a deeper understanding of it. Thanks for your
contributions.
Regards,
Will