Somehow, when running this 1.8.1 update, it broke three websites I have in development. These are Apache sites which previously had passenger configured to run in httpd.conf as follows:
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.7/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.7
PassengerRuby /usr/local/bin/ruby
<VirtualHost *:80>
ServerName flybobdev.ca.boeing.com
DocumentRoot /home/flybob/Rails/test_app/public
</VirtualHost>
This was after I ran...
gem update --system
gem pristine --all --no-extensions
My /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.7/ext/apache2
No longer has any *.so files in it. Therefore Apache gives the following error upon restart.
# /etc/init.d/apache2 graceful
httpd: Syntax error on line 481 of /opt/apache_2.2.15/conf/httpd.conf: Cannot load /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.7/ext/apache2/mod_passenger.so into server: /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.7/ext/apache2/mod_passenger.so: cannot open shared object file: No such file or directory
/usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.7/ext/apache2 CONTAINS...
-rw-r--r-- 1 root root 5909 May 6 16:57 Bucket.cpp
-rw-r--r-- 1 root root 3345 May 6 16:57 Bucket.h
-rw-r--r-- 1 root root 30041 May 6 16:57 Configuration.cpp
-rw-r--r-- 1 root root 1881 May 6 16:57 Configuration.h
-rw-r--r-- 1 root root 12609 May 6 16:57 Configuration.hpp
-rw-r--r-- 1 root root 7801 May 6 16:57 DirectoryMapper.h
-rw-r--r-- 1 root root 11669 May 6 16:57 HelperAgent.cpp
-rw-r--r-- 1 root root 61223 May 6 16:57 Hooks.cpp
-rw-r--r-- 1 root root 1540 May 6 16:57 Hooks.h
-rw-r--r-- 1 root root 1995 May 6 16:57 mod_passenger.c
I also ran gem install passenger to migrate from 3.0.4 to 3.0.7
Does this make sense? Did the gem update break passenger or did passenger change something that requires some sort of compile to get the *.so file?
···
-----Original Message-----
From: Eric Hodel [mailto:drbrain@segment7.net]
Sent: Friday, May 06, 2011 2:14 PM
To: ruby-talk ML; rubygems-developers@rubyforge.org; ruby@zenspider.com
Subject: [ANN] rubygems-update 1.8.1 Released
rubygems-update version 1.8.1 has been released!
* http://rubygems.org
* http://docs.rubygems.org
* http://help.rubygems.org
* http://github.com/rubygems
* http://rubyforge.org/projects/rubygems
RubyGems is a package management framework for Ruby.
This gem is an update for the RubyGems software. You must have an
installation of RubyGems before this update can be applied.
See Gem for information on RubyGems (or `ri Gem`)
To upgrade to the latest RubyGems, run:
$ gem update --system # you might need to be an administrator or root
See UPGRADING.rdoc for more details and alternative instructions.
-----
If you don't have RubyGems installed, your can still do it manually:
* Download from: https://rubygems.org/pages/download
* Unpack into a directory and cd there
* Install with: ruby setup.rb # you may need admin/root privilege
For more details and other options, see:
ruby setup.rb --help
=== 1.8.1 / 2011-05-05
After installing RubyGems 1.8.1 you will see deprecations when loading your
exsting gems. Run `gem pristine --all --no-extensions` to regenerate your
gem specifications safely.
Currently RubyGems does not save the build arguments used to build gems with
extensions. You will need to run `gem pristine gem_with_extension --
--build-arg` to regenerate a gem with an extension where it requires special
build arguments.
* 1 minor enhancement:
* Added Gem::Requirement#specific? and Gem::Dependency#specific?
* 4 bug fixes:
* Typo on Indexer rendered it useless on Windows
* `gem dep` can fetch remote dependencies for non-latest gems again.
* `gem uninstall` with multiple versions no longer crashes with ArgumentError
* Always use binary mode for File.open to keep Windows happy