This service will be undergoing maintenance at 00:00 UTC, 2017-10-23 It is expected to last about 30 minutes
Bug 855626 - Passenger installation via gem
Passenger installation via gem
Status: CLOSED NOTABUG
Product: Fedora
Classification: Fedora
Component: rubygems (Show other bugs)
17
x86_64 Linux
unspecified Severity medium
: ---
: ---
Assigned To: Bohuslav "Slavek" Kabrda
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-09-09 08:21 EDT by kaigillmann
Modified: 2012-09-17 01:54 EDT (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-09-14 15:35:20 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description kaigillmann 2012-09-09 08:21:33 EDT
Description of problem:
Installation of (might not be only this) passenger (gem install passenger) fails with the following error:
========================================
Building native extensions.  This could take a while...

...............
ERROR:  Error installing passenger:
		ERROR: Failed to build gem native extension.

		/usr/bin/ruby extconf.rb
extconf.rb:13: Use RbConfig instead of obsolete and deprecated Config.

make
/usr/share/rubygems/rubygems/ext/builder.rb:31:in `exec': No such file or directory - make (Errno::ENOENT)
		from /usr/share/rubygems/rubygems/ext/builder.rb:31:in `block in get_status_of_forked_command'
		from /usr/share/rubygems/rubygems/ext/builder.rb:23:in `fork'
		from /usr/share/rubygems/rubygems/ext/builder.rb:23:in `get_status_of_forked_command'
		from /usr/share/rubygems/rubygems/ext/builder.rb:84:in `block in make'
		from /usr/share/rubygems/rubygems/ext/builder.rb:82:in `each'
		from /usr/share/rubygems/rubygems/ext/builder.rb:82:in `make'
		from /usr/share/rubygems/rubygems/ext/ext_conf_builder.rb:18:in `build'
		from /usr/share/rubygems/rubygems/installer.rb:536:in `block (2 levels) in build_extensions'
		from /usr/share/rubygems/rubygems/installer.rb:535:in `chdir'
		from /usr/share/rubygems/rubygems/installer.rb:535:in `block in build_extensions'
		from /usr/share/rubygems/rubygems/installer.rb:509:in `each'
		from /usr/share/rubygems/rubygems/installer.rb:509:in `build_extensions'
		from /usr/share/rubygems/rubygems/installer.rb:180:in `install'
		from /usr/share/rubygems/rubygems/dependency_installer.rb:297:in `block in install'
		from /usr/share/rubygems/rubygems/dependency_installer.rb:270:in `each'
		from /usr/share/rubygems/rubygems/dependency_installer.rb:270:in `each_with_index'
		from /usr/share/rubygems/rubygems/dependency_installer.rb:270:in `install'
		from /usr/share/rubygems/rubygems/commands/install_command.rb:121:in `block in execute'
		from /usr/share/rubygems/rubygems/commands/install_command.rb:115:in `each'
		from /usr/share/rubygems/rubygems/commands/install_command.rb:115:in `execute'
		from /usr/share/rubygems/rubygems/command.rb:278:in `invoke'
		from /usr/share/rubygems/rubygems/command_manager.rb:147:in `process_args'
		from /usr/share/rubygems/rubygems/command_manager.rb:117:in `run'
		from /usr/share/rubygems/rubygems/gem_runner.rb:65:in `run'
		from /bin/gem:30:in `<main>'


Gem files will remain installed in /usr/local/share/gems/gems/fastthread-1.0.7 for inspection.
Results logged to /usr/local/share/gems/gems/fastthread-1.0.7/ext/fastthread/gem_make.out
========================================

Version-Release number of selected component (if applicable):
ruby 1.9.3
rubygems 1.8.24

Steps to Reproduce:
Install fedora
sudo su
yum install ruby rubygems
gem install passenger
  
Expected results:
passenger installed and ready

Additional info:
Searched for several terms and messages using Google.
Might remember some other packages made problems in the past -> might be a bigger problem.
I have installed httpd, php, mysql, ..., too and tried to set up some vhosts running rails applications.
Comment 1 Bohuslav "Slavek" Kabrda 2012-09-10 02:22:41 EDT
It seems that you don't have "make" installed. Could you try "yum install make" and repeat the installation? I'm not sure, but you may also need to install some other packages to get passenger compiled properly: asciidoc, doxygen, graphviz, httpd-devel, libev-devel, source-highlight.

BTW Fedora already has passenger packaged as RPM, although not in stable repository yet. You can try that out by using "yum install rubygem-passenger --enablerepo=updates-testing". This comes with one of the great advantages of RPM-packaged gems: you will not need development dependencies (as mentioned above) on your system and the software will get installed ok with correct gem and non-gem runtime depencies.
Comment 2 kaigillmann 2012-09-14 15:35:20 EDT
Hi,

yum install make asciidoc doxygen graphviz httpd-devel libev-devel source-highlight

made it work. Thanks for your help.

The ruby errors are kinda irritating if you are not into it! What made you guess it could be make? What advice could you give me if I have further problems with ruby dependencies? How to i easily solve those problems without digging into every detail?


I hoped for a rpm because it would make things a lot easier for me.
Comment 3 Bohuslav "Slavek" Kabrda 2012-09-17 01:54:36 EDT
(In reply to comment #2)
> Hi,
> 
> yum install make asciidoc doxygen graphviz httpd-devel libev-devel
> source-highlight
> 
> made it work. Thanks for your help.
> 

Great. You're welcome.

> The ruby errors are kinda irritating if you are not into it! What made you
> guess it could be make? What advice could you give me if I have further
> problems with ruby dependencies? How to i easily solve those problems
> without digging into every detail?
> 

One of the first lines of the error message says:
/usr/share/rubygems/rubygems/ext/builder.rb:31:in `exec': No such file or directory - make
which basically says that the RubyGems C extension builder was trying to execute a program named "make".
Well, my advice here is to use system-packaged Gems. Solving these dependency problems is one of their great advantages (you don't need to care about the dependencies, distro packagers do that).

> 
> I hoped for a rpm because it would make things a lot easier for me.

Passenger took a great packaging effort and has reached Fedora official repositories very recently, therefore it is only in updates-testing yet (but it should reach the main repository any day now, AFAIK). For now, you can install it from updates-testing like this:
"yum install rubygem-passenger --enablerepo=updates-testing"

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