buddyp450
buddyp450

Reputation: 572

ImageMagick version cannot be found - rmagick install fails

Super confused and a first time Ruby user... I already have rmagick installed as denoted here:

actionmailer (3.2.6)
actionpack (3.2.6)
activemodel (3.2.6)
activerecord (3.2.6)
activeresource (3.2.6)
activesupport (3.2.6)
arel (3.0.2)
builder (3.0.0)
bundler (1.1.5)
cgi_multipart_eof_fix (2.5.0)
coderay (1.0.7)
erubis (2.7.0)
fastercsv (1.5.5)
gem_plugin (0.2.3)
hike (1.2.1)
i18n (0.6.0, 0.4.2)
journey (1.0.4)
json (1.7.5)
mail (2.4.4)
metaclass (0.0.1)
mime-types (1.19)
mocha (0.12.3)
mongrel (1.1.5 x86-mingw32)
mongrel_service (0.3.4 i386-mswin32)
multi_json (1.3.6)
mysql (2.8.1 x86-mingw32)
net-ldap (0.3.1)
pg (0.14.0 x86-mingw32)
polyglot (0.3.3)
prototype-rails (3.2.1)
rack (1.4.1)
rack-cache (1.2)
rack-openid (1.3.1)
rack-ssl (1.3.2)
rack-test (0.6.1)
rails (3.2.6)
railties (3.2.6)
rake (0.9.2.2)
rdoc (3.12)
rmagick (2.12.0 mswin32)
ruby-openid (2.1.8)
sprockets (2.1.3)
thor (0.16.0)
tilt (1.3.3)
treetop (1.4.10)
tzinfo (0.3.33)
win32-service (0.5.2 mswin32)

But when I run bundle install. It gives me this output.

Fetching gem metadata from http://rubygems.org/.......
Using rake (0.9.2.2) 
Using i18n (0.6.0) 
Using multi_json (1.3.6) 
Using activesupport (3.2.6) 
Using builder (3.0.0) 
Using activemodel (3.2.6) 
Using erubis (2.7.0) 
Using journey (1.0.4) 
Using rack (1.4.1) 
Using rack-cache (1.2) 
Using rack-test (0.6.1) 
Using hike (1.2.1) 
Using tilt (1.3.3) 
Using sprockets (2.1.3) 
Using actionpack (3.2.6) 
Using mime-types (1.19) 
Using polyglot (0.3.3) 
Using treetop (1.4.10) 
Using mail (2.4.4) 
Using actionmailer (3.2.6) 
Using arel (3.0.2) 
Using tzinfo (0.3.33) 
Using activerecord (3.2.6) 
Using activeresource (3.2.6) 
Using bundler (1.1.5) 
Using coderay (1.0.7) 
Using fastercsv (1.5.5) 
Using json (1.7.5) 
Using metaclass (0.0.1) 
Using mocha (0.12.3) 
Using mysql (2.8.1) 
Using net-ldap (0.3.1) 
Using pg (0.14.0) 
Using rack-ssl (1.3.2) 
Using rdoc (3.12) 
Using thor (0.16.0) 
Using railties (3.2.6) 
Using rails (3.2.6) 
Using prototype-rails (3.2.1) 
Using ruby-openid (2.1.8) 
Using rack-openid (1.3.1) 
Installing rmagick (2.13.1) with native extensions 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

C:/wamp/ruby/bin/ruby.exe extconf.rb 
checking for Ruby version >= 1.8.5... yes
Invalid drive specification.
Unable to get ImageMagick version
*** 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:/wamp/ruby/bin/ruby


Gem files will remain installed in C:/wamp/ruby/lib/ruby/gems/1.8/gems/rmagick-2.13.1 for inspection.
Results logged to C:/wamp/ruby/lib/ruby/gems/1.8/gems/rmagick-2.13.1/ext/RMagick/gem_make.out
An error occured while installing rmagick (2.13.1), and Bundler cannot continue.
Make sure that `gem install rmagick -v '2.13.1'` succeeds before bundling.

Note that I'm attempting to complete a redmine installation and need rmagick to continue using rake.

My ruby version is 1.8.7 and rubygem version is 1.3.7. Thanks.

Update:

So after hearing that my existing rmagick was an old version I ran:

gem uninstall rmagick

and successfully uninstalled my existing gem. After which I attempted a bundle install again which failed exactly the same as before.

This time however I went to my folder (C:\wamp\ruby\lib\ruby\gems\1.8\gems\rmagick-2.13.1) where it said the files would still be stored. There I ran a new build via

gem build rmagick.gemspec

The build succeeded so I think we're getting somewhere. I ran:

gem install rmagick-2.13.1.gem --platform=ruby -- --with-opt-lib=c:\ImageMagick\6.3.5-Q8\lib --with-opt-include=c:\ImageMagick\6.3.5-Q8\include

and got this output (note that I'm no longer getting Invalid Drive but this is otherwise identical to before):

checking for Ruby version >= 1.8.5... yes
Invalid drive specification.
Unable to get ImageMagick version
*** 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:/wamp/ruby/bin/ruby


Gem files will remain installed in C:/wamp/ruby/lib/ruby/gems/1.8/gems/rmagick-2.13.1 for inspection.
Results logged to C:/wamp/ruby/lib/ruby/gems/1.8/gems/rmagick-2.13.1/ext/RMagick/gem_make.out

So now I'm just working on why it can't determine the ImageMagick version...

Upvotes: 0

Views: 3232

Answers (3)

buddyp450
buddyp450

Reputation: 572

While this may not exactly answer the question... it's likely that as a novice user I borked my installation at some point.

Back-tracking and uninstalling everything that I had previously installed and then following the installation instructions again resolved the issue.

Note that this time around even in parts where it said, "although future versions should also work" I instead specified the exact versions that were mentioned in the article at the time of writing.

Upvotes: 1

Tiago Franco
Tiago Franco

Reputation: 1016

ImageMagick is a native library, used by RMagick to manipulate images. It seems something might be wrong with your ImageMagick installation, and RMagick is unable to detect the ImageMagick version installed on your environment.

On the console, when you type 'identify', do you have the output of an application or just an file not found error?

Upvotes: 0

halfelf
halfelf

Reputation: 10097

There is an old version of rmagick, though bundler try to install a newer version. The build of the new version went something wrong. You should check the log file to find why.

Upvotes: 0

Related Questions