0

I am getting ready to start hosting my own Ruby applications. I already have RVM installed on my production server. Now I would like to install Passenger.

I have Ruby 1.9.2 set as the default. I installed the passenger gem and ran passenger-install-apache2-module. This displayed a list of missing dependencies, one of which being OpenSSL support for Ruby. It explained that I needed to re-install Ruby with OpenSSL support. I don't know how to do this and don't know why it is not there to begin with. Here is the list of other errors:

  • GNU C++ compiler... not found
  • Curl development headers with SSL support... not found
  • OpenSSL development headers... not found
  • Zlib development headers... not found
  • Ruby development headers... found
  • OpenSSL support for Ruby... not found
  • RubyGems... found
  • Rake... found at /usr/local/rvm/wrappers/ruby-1.9.2-p320/rake
  • rack... found
  • Apache 2... found at /usr/sbin/httpd
  • Apache 2 development headers... not found
  • Apache Portable Runtime (APR) development headers... not found
  • Apache Portable Runtime Utility (APU) development headers... not found

It seems like many of these things should have already been available. Did I install RVM wrong? Is there an easier way to get Passenger up and running without installing a bunch of dependencies that I may never use later? What should I do?

Update: I forgot to mention this is a RedHat server hosted at Rackspace. I'm not sure if there is a Rackspace recommended way of doing this. I know they maintain their own list of trusted packages/repositories.

2 Answers 2

0

I had to install Passenger (specifically mod_passenger) and here's how I did it. My environment is CentOS 6, x86_64.

  1. Install required rpms

    yum install httpd httpd-devel openssl-devel mod_ssl
    
  2. Add EPEL repo. Remember to edit /etc/yum.repos.d/epel.repo and disable it by setting enabled to 0. Actual source for epel-release-6-5.noarch.rpm will not be from fedoraproject.org/... as you will actually be hitting a mirror server.

    wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
    rpm -ivh epel-release-6-5.noarch.rpm
    
  3. Set up to use yum repo at stealthymonkeys.com which hosts rpms for passenger. Installs mod_passenger which requires epel repo for some dependent rpms.

    rpm -Uvh http://passenger.stealthymonkeys.com/rhel/6/passenger-release.noarch.rpm
    
  4. Install mod_passenger using the following command.

    yum   --enablerepo=epel  --enablerepo=passenger  install mod_passenger
    

Not able to provide better answer as I don't know your environment but hopefully this will help.

0

Rackspace wasn't much help, but this ended up being easier than I thought and there were no issues. I simply followed the directions that passenger gave me. It said I needed to install a bunch of packages, so I ran through each one, one at a time (i.e. sudo yum install openssl-devel). None of the packages conflicted with other packages I had installed because they were all new (I didn't need to update any). Then I ran the passenger installer again and it was able to compile itself just fine.

The only gotcha that I came across is that Passenger will only let you run one version of Ruby, so when you install Passenger through RVM, make sure you are rvm use-ing the version of Ruby you want to use.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .