# gem install passenger Building native extensions. This could take a while... ERROR: Error installing passenger: ERROR: Failed to build gem native extension. /usr/bin/ruby1.8 extconf.rb install passenger extconf.rb:8:in `require': no such file to load -- mkmf (LoadError) from extconf.rb:8
Since the machine is a VPS I like to try and keep the number of unnecessary packages down to a minimum. It turns out the only extra package I needed to install was ruby1.8-dev.
After Passenger built successfully, I had to add /var/lib/gems/1.8/bin into my $PATH and run passenger-install-apache2-module (which contained cushy step-by-step instructions from that point on).