0

I'm attempted to install the bzip2-ruby gem on Windows 7 x64. Now I don't know if this gem even works on 64-bit Windows. I did install bzip2 which got installed to C:\Program Files (x86)\GnuWin32.

When I go to install, the run the following command:

gem install bzip2-ruby -- --with-bz2-dir="C:\Program Files (x86)\GnuWin32\"

When that runs I get the following output:

Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=C:/Ruby193/bin/ruby
        --with-bz2-dir
        --with-bz2-include
        --without-bz2-include=${bz2-dir}/include
        --with-bz2-lib
        --without-bz2-lib=${bz2-dir}/lib
        --with-bz2lib
        --without-bz2lib
ERROR:  Error installing bzip2-ruby:
        ERROR: Failed to build gem native extension.

        C:/Ruby193/bin/ruby.exe extconf.rb --with-bz2-dir=C:\Program Files (x86)\GnuWin32"
checking for bzlib.h... no
checking for BZ2_bzWriteOpen() in -lbz2... no
libbz2 not found, maybe try manually specifying --with-bz2-dir to find it?

Gem files will remain installed in C:/Ruby193/lib/ruby/gems/1.9.1/gems/bzip2-ruby-0.2.7 for inspection.
Results logged to C:/Ruby193/lib/ruby/gems/1.9.1/gems/bzip2-ruby-0.2.7/ext/gem_make.out

I can verify that the libbz2.a, libbz2.def, and the libbz2.dll.a files exist in the lib folder at the path above.

Am I just missing an extra option when running the command to specify the lib folder?

Thanks!

Justin Chmura
  • 430
  • 1
  • 4
  • 11

1 Answers1

0

For GCC (the compiler bundled in RubyInstaller DevKit) to properly work, you need to use path without spaces.

The option to extconf that you provided has a path with spaces. Please relocate the lib, include and bin folders from bzip2 into a directory without spaces and try again.

Also, you need to have both headers (found in include directory) and the import library (found in lib directory) for extension compilation to work.

Hope that helps.

Luis Lavena
  • 10,348
  • 1
  • 37
  • 39
  • You're a life saver! It looks like that's exactly what it was, the spaces in the path. The gem successfully installed when I moved the files elsewhere. Thanks again! – Justin Chmura Jun 15 '12 at 14:16