Rmagick под окнами - PullRequest
       5

Rmagick под окнами

7 голосов
/ 14 февраля 2011

Я просто хотел установить rmagick под Windows.

Поэтому я установил ImageMagick с заголовком C / C ++, но, похоже, в этом больше нет необходимости.

Затем я установил инструменты сборки Ruby

ruby dk.rb init
ruby dk.rb install

Затем я хотел установить гем rmagick с gem install rmagick.

Но я получаю эту ошибку:

H:\Downloads\ruby build tools>gem install rmagick
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
ERROR:  Error installing rmagick:
        ERROR: Failed to build gem native extension.

        C:/Ruby192/bin/ruby.exe extconf.rb
checking for Ruby version >= 1.8.5... yes
checking for stdint.h... *** 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:/Ruby192/bin/ruby
C:/Ruby192/lib/ruby/1.9.1/mkmf.rb:368:in `try_do': The complier failed to generate 
an executable file. (RuntimeError)
You have to install development tools first.
        from C:/Ruby192/lib/ruby/1.9.1/mkmf.rb:452:in `try_cpp'
        from C:/Ruby192/lib/ruby/1.9.1/mkmf.rb:834:in `block in have_header'
        from C:/Ruby192/lib/ruby/1.9.1/mkmf.rb:693:in `block in checking_for'
        from C:/Ruby192/lib/ruby/1.9.1/mkmf.rb:280:in `block (2 levels) in postpone'
        from C:/Ruby192/lib/ruby/1.9.1/mkmf.rb:254:in `open'
        from C:/Ruby192/lib/ruby/1.9.1/mkmf.rb:280:in `block in postpone'
        from C:/Ruby192/lib/ruby/1.9.1/mkmf.rb:254:in `open'
        from C:/Ruby192/lib/ruby/1.9.1/mkmf.rb:276:in `postpone'
        from C:/Ruby192/lib/ruby/1.9.1/mkmf.rb:692:in `checking_for'
        from C:/Ruby192/lib/ruby/1.9.1/mkmf.rb:833:in `have_header'
        from extconf.rb:193:in `<main>'

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

Перед установкой инструментов сборки,Я только что получил совет по их установке.

Теперь они установлены, и я получаю сообщение об ошибке, отличное от предыдущего (см. Выше).

Мне все еще нужно установить Инструменты сборки, поэтомуего установка может быть повреждена?

Я получаю ту же ошибку с linecache ... также что-то с файлом mkmf и инструментами сборки.

Полагаю, это распространенная ошибка.

Ответы [ 6 ]

4 голосов
/ 23 августа 2013

Сначала мне пришлось установить Ruby on Rails, а затем из командной строки с Ruby и Rails я запустил:

gem install rmagick --platform=ruby -- --with-opt-dir=C:\ImageMagick

Все заработало, и я увидел это:

Fetching: rmagick-2.13.2.gem (100%)
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
Successfully installed rmagick-2.13.2
1 gem installed
Installing ri documentation for rmagick-2.13.2...
Installing RDoc documentation for rmagick-2.13.2...

Windows 7 64-битная, но установлена ​​32-битная версия ImageMagick в C: \ ImageMagick

3 голосов
/ 17 октября 2011

Я установил ImageMagick и RMagick в Windows Vista в среде Rails следующим образом:

Сначала я скачал ImageMagick-6.6.7-Q16 из http://www.imagemagick.org/download/binaries/ и установил его в папку "C: \ ImageMagick-6.6.7-Q16".

Затем я скачал RMagick из https://github.com/rmagick/rmagick/zipball/master и извлек его в "C"Папка: \ RailsInstaller \ Ruby1.9.2 \ lib \ ruby ​​\ gems \ 1.9.1 \ bundler \ gems \ rmagick-rmagick \ "(которая является моей папкой драгоценных камней ruby ​​bundler).

Тогда я просто позвонил

'gem install rmagick' 

из моего приглашения, и все работает нормально.

Теперь я могу вызывать из приложения Rails Gemfile

gem "rmagick"

И тогда «установка комплекта» работает нормально.

PS: обратите внимание, что я впервые установил Rails с http://www.railsinstaller.org.

2 голосов
/ 07 октября 2014

Я также получил ту же ошибку checking for stdint.h... Проблема была в том, что я установил ImageMagick на C:\Program Files (x86)\ImageMagick, который содержит пробелы .Поэтому я деинсталлирую ImageMagick и снова устанавливаю его на C:\Ruby19\ImageMagick.

Вот что я сделал (Ruby 1.9.3, mingw32)

  1. Загрузка ImageMagick-6.7.7-9-Q8-windows-dll.exe (последняя версия ImageMagick несовместима с rmagick)
  2. Установить на C:\Ruby19\ImageMagick. Путь не должен содержать пробелов!
  3. Установить конфигурацию установки на
    • Добавить директиву приложения к системному пути
    • Установить заголовки разработки и библиотеки для C иC ++
  4. gem install rmagick --platform=ruby -- --with-opt-dir=C:\Ruby19\ImageMagick
2 голосов
/ 02 июня 2011

Сначала включите файлы заголовков и lib в вашу Системную среду:

set CPATH=C:/Progra~2/ImageMagick-6.7.0-Q16/include
set LIBRARY_PATH=C:/Progra~2/ImageMagick-6.7.0-Q16/lib

После этого будет выполнена установка gem **.~. ~

1 голос
/ 15 февраля 2011

Я установил RMagick, используя эти инструкции . Обратите внимание, что он требует Ruby 1.9.1, но работает (в любом случае) для 1.9.2 (i386-mingw32). Я рекомендую удалить / переустановить ImageMagick, используя версию, указанную в инструкции.

0 голосов
/ 21 июля 2011

Если возможно, попробуйте заменить RMagick на Mini_Magick, он нацелен на то же, но другим способом.Мне не повезло с RMagick, но Mini_Magick установлен в комплекте

...