Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 589934

Summary: =dev-ruby/rdoc-4.2.1 doesn't install binaries for ruby23
Product: Gentoo Linux Reporter: Rick Farina (Zero_Chaos) <zerochaos>
Component: Current packagesAssignee: Gentoo Ruby Team <ruby>
Status: RESOLVED FIXED    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: build.log

Description Rick Farina (Zero_Chaos) gentoo-dev 2016-07-28 18:10:55 UTC
Created attachment 441828 [details]
build.log

even with USE="-doc":

/var/tmp/portage/dev-ruby/sqlite3-1.3.11/temp/environment: line 719: rdoc: command not found
 * ERROR: dev-ruby/sqlite3-1.3.11::gentoo failed (compile phase):
 *   (no error message)
 * 
 * Call stack:
 *     ebuild.sh, line  115:  Called src_compile
 *   environment, line 4482:  Called ruby-ng_src_compile
 *   environment, line 4173:  Called _ruby_invoke_environment 'all' 'all_ruby_compile'
 *   environment, line  634:  Called all_ruby_compile
 *   environment, line  719:  Called die
 * The specific snippet of code:
 *       rdoc --title "${P} Dcoumentation" -o doc --main README.rdoc lib *.rdoc ext/*/*.c || die
Comment 1 Rick Farina (Zero_Chaos) gentoo-dev 2016-07-28 18:35:51 UTC
I fixed the conditional, but I also commented this out because no version of rdoc in gentoo installs a binary called rdoc afaict.  I have rdoc installed and I still get this error, so I'm guessing the people who tested this had it installed outside of emerge.

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=44f95828300ed00b0bc0fa91cd605bea76f44a92

I made it work for now, but I didn't know which rdoc to run so I left it alone for right now.
Comment 2 Jouni Kosonen 2016-07-28 23:21:51 UTC
(In reply to Rick Farina (Zero_Chaos) from comment #1)
> I fixed the conditional, but I also commented this out because no version of
> rdoc in gentoo installs a binary called rdoc afaict. 

My /usr/bin/rdoc is a symlink managed by app-eselect/eselect-ruby-20151229
Comment 3 Hans de Graaff gentoo-dev Security 2016-07-31 06:24:37 UTC
(In reply to Rick Farina (Zero_Chaos) from comment #1)
> I fixed the conditional,

Thanks! I have now uncommented it, see below.

> but I also commented this out because no version of
> rdoc in gentoo installs a binary called rdoc afaict.  I have rdoc installed
> and I still get this error, so I'm guessing the people who tested this had
> it installed outside of emerge.

Which version of rdoc do you have installed?

There was a bug in the rdoc ebuilds that could cause the /usr/bin/rdoc link to disappear during updates. This has been fixed some time ago in rdoc-4.2.0 and later. You can re-eselect ruby to reinstall the link.
Comment 4 Rick Farina (Zero_Chaos) gentoo-dev 2016-07-31 20:08:36 UTC
(In reply to Hans de Graaff from comment #3)

> Which version of rdoc do you have installed?
> 
> There was a bug in the rdoc ebuilds that could cause the /usr/bin/rdoc link
> to disappear during updates. This has been fixed some time ago in rdoc-4.2.0
> and later. You can re-eselect ruby to reinstall the link.

zero@gato ~ % which rdoc
rdoc not found
zero@gato ~ % sudo -i
gato ~ # which rdoc
rdoc not found
gato ~ # emerge -vp rdoc --nodeps
FEATURES variable contains unknown value(s): qa-experimental
 * --tree is broken with --nodeps. Disabling...

These are the packages that would be merged, in order:

[ebuild   R   ~] dev-ruby/rdoc-4.2.1::gentoo  USE="-doc {-test}" RUBY_TARGETS="ruby21 ruby22 ruby23 -ruby20" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB
gato ~ # eselect ruby list
Available Ruby profiles:
  [1]   ruby21 (with Rubygems)
  [2]   ruby22 (with Rubygems)
  [3]   ruby23 (with Rubygems) *
gato ~ # eselect ruby set 3
FEATURES variable contains unknown value(s): qa-experimental
Successfully switched to profile:
  ruby23
gato ~ # which rdoc
rdoc not found
gato ~ # eselect ruby set 2
FEATURES variable contains unknown value(s): qa-experimental
Successfully switched to profile:
  ruby22
gato ~ # which rdoc
/usr/bin/rdoc
gato ~ # eselect ruby set 1
FEATURES variable contains unknown value(s): qa-experimental
Successfully switched to profile:
  ruby21
gato ~ # which rdoc        
/usr/bin/rdoc


Looks a little like despite being built with ruby23 support, rdoc link just doesn't get made for ruby23?

looking at the files installed it looks like /usr/bin/rdoc23 is missing...
incidentally so is /usr/bin/ri23
Comment 5 Hans de Graaff gentoo-dev Security 2016-08-05 08:06:37 UTC
(In reply to Rick Farina (Zero_Chaos) from comment #4)

> [ebuild   R   ~] dev-ruby/rdoc-4.2.1::gentoo  USE="-doc {-test}"
> RUBY_TARGETS="ruby21 ruby22 ruby23 -ruby20" 0 KiB

Ah, an old version where this was not fixed yet. This was fixed with rdoc 4.2.2 in February. I've removed 4.2.1 to avoid further confusion with this.

Thanks for the detailed info.