Mkmf.rb broken in cvs?


(Brad Hilton) #1

Hello,

I recently noticed I was unable to install a ruby module that used mkmf
to generate a Makefile.

Just typing

require ‘mkmf’

from within irb showed me the problem. It died with:

“can’t find header files for ruby”

The problem appears to be that mkmf defines

CONFIG = Config::MAKEFILE_CONFIG

from rbconfig.rb. MAKEFILE_CONFIG, however, does not have its values
replaced with real directories like Config::CONFIG does.

So, when mkmf accesses something like CONFIG[‘archdir’] it ends up with
"$(rubylibdir)/$(sitedir)" rather than a real directory.

Just changing one line in mkmf.rb from

CONFIG = Config::MAKEFILE_CONFIG
to
CONFIG = Config::CONFIG

solves the problem for me.

Thanks,
Brad