Bug 1000794 - ruby-devel should have gcc as dependency
Summary: ruby-devel should have gcc as dependency
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: ruby
Version: 19
Hardware: All
OS: Linux
unspecified
low
Target Milestone: ---
Assignee: Vít Ondruch
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-08-25 10:11 UTC by Dāvis
Modified: 2013-08-27 06:57 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-08-26 11:22:22 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Dāvis 2013-08-25 10:11:23 UTC
Description of problem: 




How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Dāvis 2013-08-25 10:18:19 UTC
whoops, I hit enter, but didn't thought it will submit it immediately... and seems I can't delete it either.

anyway on freshly installed Fedora 19
when I install `ruby` and `ruby-devel`, I still don't have compiler such as gcc
so when I try to update gems with `gem update` it fails to compile native extensions because I don't have toolchain.

I can't imagine use of ruby-devel without compiler so I think it should be as dependency.

Comment 2 Dāvis 2013-08-25 10:20:55 UTC
here's how it looked like after I typed `gem update`

Updating json
Fetching: json-1.8.0.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing json:
        ERROR: Failed to build gem native extension.

    /usr/bin/ruby extconf.rb
creating Makefile

make "DESTDIR="
gcc -I. -I/usr/include -I/usr/include/ruby/backward -I/usr/include -I. -DJSON_GENERATOR    -fPIC -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -grecord-gcc-switches -mtune=generic -fPIC -O3 -Wall -O0 -ggdb -m64 -o generator.o -c generator.c
make: gcc: Command not found
make: *** [generator.o] Error 127


Gem files will remain installed in /usr/local/share/gems/gems/json-1.8.0 for inspection.
Results logged to /usr/local/share/gems/gems/json-1.8.0/ext/json/ext/generator/gem_make.out

Comment 3 Vít Ondruch 2013-08-26 11:22:22 UTC
Hi Dāvis,

Than you for your suggestion. Although I agree that for the use case you describe, it would make much sense, the -devel package is generally not bound to gcc. You can install the package independently, for example to use it with different compiler, to read the header files, to package ruby library, to query ruby build options and in other languages also for different needs. So as long as RPM is not expressive enough to have it as *optional* dependency, I have to reject it.

Comment 4 Dāvis 2013-08-26 19:42:34 UTC
Ok, fair enough. But doesn't yum have something as "suggested packages"? I think I've seen that somewhere, maybe on Ubuntu...

Comment 5 Vít Ondruch 2013-08-27 05:59:03 UTC
Not sure about Ubuntu, but nothing like this in Fedora :/ The only remotely similar thing in Fedora is comps [1].

But generally, the idea is that you should not need compiler on your system, since Fedora provides you precompiled version of gem.


[1] https://fedorahosted.org/comps/

Comment 6 Dāvis 2013-08-27 06:41:22 UTC
Tell that to Gems :D Lot of gems require compilation.

And yeah, it's apt-get (Ubuntu/Debian, etc) [1] with such feature, I think would be good if yum would have something similar. Or maybe I should learn how to properly use yum groupinstall...

[1] http://cdn.howtogeek.com/wp-content/uploads/2012/03/apt-get-install.png

Comment 7 Vít Ondruch 2013-08-27 06:57:01 UTC
(In reply to Dāvis from comment #6)
> Tell that to Gems :D Lot of gems require compilation.

Lot of the gems which needs compilation is already in Fedora. You gave example with JSON and we have rubygem-json in Fedora. If that is too old version, you might want to check with its maintainer (probably via Bugzilla) if update is feasible.

> I think would be good if yum would have something similar.

You can't imagine how happy I would be, if that happens, but that is surprisingly low priority for RPM/YUM devs :/


Note You need to log in before you can comment on or make changes to this bug.