After a clean install of all the FC3 Ruby packages, (except the Emacs mode for Ruby), RDoc documentation for the 'ri' utility is not available. For a Ruby newbie it is then no trivial task to work out how to go about installing this documentation, particularly how to go about installing it in a location consistent with the way the Ruby RPMs have been created. Version-Release number: ruby-1.8.1-7.FC3.1, ruby-docs-1.8.1-7.FC3.1 How reproducible: Always Steps to Reproduce: Run the 'ri' command with any core Ruby class, module, etc. as an argument, e.g.: [rjt@melkor ~]$ ri GC Actual Results: The 'ri' application quits complaining about a lack of documentation and a prompt for the user to create some using the 'rdoc' utility. Expected Results: 'ri' should return information about any core class or module without the user having to first create the relevant RDoc documentation. Additional info: ACTUAL: [rjt@melkor ~]$ ri GC No ri documentation found in: /usr/share/ri/1.8/system /usr/share/ri/1.8/site /home/rjt/.rdoc Was rdoc run to create documentation? EXPECTED: [rjt@melkor ~]$ ri GC ----------------------------------------------------------- Class: GC The GC module provides an interface to Ruby's mark and sweep garbage collection mechanism. Some of the underlying methods are also available via the ObjectSpace module. --------------------------------------------------------------------- Class methods: disable, enable, start Instance methods: garbage_collect
I too am interested in this, since the only way to get rdoc for built-ins is during compile-time. I decided to grab the SRPM from my local mirror, and had a look. I am not a rpm-spec wizard, so I decided to do dumb things. First, following this: http://www.rubygarden.org/ruby?NextGenerationRi I tried adding --enable-install-doc to the configure bits of the .spec file. Well, it didn't work...mainly because, in the ruby-1.8.1 tarball in the SRPM, there isn't an install-doc area in configure.in. So, I did what any irrational person would do, grabbed the 1.8.2 official tarball and changed the spec file to look for 1.8.2. After commenting out the ia64 patch (since it caused an error), I reran the rpmbuild and all was well until this: ++ /var/tmp/ruby-1.8.2-root/usr/bin/ruby -r /var/tmp/ruby-1.8.2-root/usr/lib/ruby/1.8/i386-linux/rbconfig.rb -e 'printf ("%s\n", Config::CONFIG["arch"])' /var/tmp/ruby-1.8.2-root/usr/lib/ruby/1.8/i386-linux/rbconfig.rb:7: ruby lib version (1.8.2) doesn't match executable version (1.8.1) (RuntimeError) + arch= error: Bad exit status from /var/tmp/rpm-tmp.8263 (%install) I'm too dumb at C compiling (go Fortran 95!) and rpm building to figure out how to get around this. It seems that something is still being built as 1.8.1, but I can't figure out what. If someone can help me out, I'll try rebuilding.
Fixed in 1.8.2-1 on rawhide. and hopefully the updated package for FC3 will be available soon.
Fixed in 1.8.2-1.FC3.0. please install ri package then.
Excellent! It's nice to see things like this moving quickly and certainly typing 'sudo yum -y install ri' is quicker than the palaver of generating the documentation oneself using RDoc. Cheers!