Установка rmagick в Ubuntu

134

Я пытаюсь настроить RMagick на Ubuntu 10.04. Посмотрел тут но радости не было. Я даже скомпилировал и установил ImageMagick из исходного кода, но приведенные здесь инструкции не помогли мне при попытке установить RMagick с использованием RubyGems. Я получил эту ошибку:

carcher@carcher-laptop:~/Code/temp/RMagick-2.13.1$ sudo gem install rmagick
Building native extensions.  This could take a while...
ERROR:  Error installing rmagick:
 ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb
extconf.rb:1:in `require': no such file to load -- mkmf (LoadError)
 from extconf.rb:1


Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/rmagick-2.13.1 for inspection.
Results logged to /usr/lib/ruby/gems/1.8/gems/rmagick-2.13.1/ext/RMagick/gem_make.out
carcher@carcher-laptop:~/Code/temp/RMagick-2.13.1$ 

Что все это значит? :) Я новичок в Ruby и RubyGems, поэтому, пожалуйста, будьте осторожны. Моя установка выглядит следующим образом:

Ruby: 1.8.7
RubyGems: 1.3.7

У меня почти нет идей (и я тоже устал!). Я устал компилировать RMagick из исходного кода, используя ссылку выше, но это не удалось, так как не было ./configureсценария :(

Любая помощь приветствуется!

Ciaran Archer
источник
Большинство из этих ответов отличаются от официальных документов, Вы должны установить imagemagick, libmagickcore-devи libmagickwand-dev: github.com/rmagick/rmagick/wiki/Installing-on-Ubuntu
Робин Clowers

Ответы:

258

Установите пакеты imagemagickи libmagickwand-dev(или libmagick9-dev). После этого вы сможете установить Rmagick Gem.

sudo apt-get install imagemagick libmagickwand-dev

Если нет, то вам не хватает связанных с ruby ​​пакетов разработки, таких как build-essentialи ruby1.8-dev. Если это так, то общий запрос "ubuntu install ruby ​​1.8" в Google должен помочь вам.

gcahill
источник
1
Это (imagemagick и libmagickwand-dev), похоже, сработало, и я вижу RMagick 2.13.1 как один из моих перечисленных драгоценных камней!
Ciaran Archer
3
Как я прокомментировал ниже, у меня сейчас отлично работало только с libmagickwand-dev, и мне не нужно было никаких дополнительных пакетов. По крайней мере, для Magick :: ImageList.from_blob, Magick :: ImageList.resize и Magick :: ImageList.write. Не уверен насчет других методов.
Umassthrower
Это, безусловно, самый быстрый ответ! УДИВИТЕЛЬНЫЙ!
Томер
1
В Ubuntu 14.04 LTS сначала нужно установить libmagickcore-dev, а затем libmagickwand-dev, иначе apt-get откажется устанавливать пакет wand dev. (Вы должны иметь возможность установить их в одной командной строке следующим образом :)sudo apt-get install imagemagick libmagickcore-dev libmagickwand-dev (источник: askubuntu.com/questions/112548/rmagick-install-problem/… )
Далибор Филус
В моем случае - после долгих попыток apt-get сказал мне, что libmagickwand-dev требует libmagickcore-dev, но не собирается быть установленным. Я бегу sudo apt-get install libmagickcore-devдо magigwand, и это помогло :)
Гжегож
63

Вам не нужно много другого мусора в этих ответах, просто:

sudo apt-get install libmagickwand-dev
Даниэль Х Мур
источник
4
Я могу подтвердить, что это работало на Ubuntu 14.04. В качестве примечания вам также понадобятся пакеты ruby-devи make... которые, возможно, уже есть в типичной системе, но их не было в образе докера.
Дэн Аллен
Вам также понадобится imagemagickпакет: github.com/rmagick/rmagick/wiki/Install-on-Ubuntu
Робин Кловерс
После поиска в течение часа комментарий Дана Аллена ^ (об установке makeи ruby-dev) наконец исправил его. Спасибо!
Саринк
Не забудьте сделать: sudo apt-get updateдо этого.
ZombieBsAs
29

На Ubuntu 12.04 libmagick9-dev больше нет. graphicsmagick-libmagick-dev-compatследует использовать вместо

apt-get install graphicsmagick-libmagick-dev-compat
Михал Шайбе
источник
2
Чтобы уточнить для 12.04: sudo apt-get установите libmagickwand-dev graphicsmagick-libmagick-dev-
compat
Вы также должны установить imagemagick: github.com/rmagick/rmagick/wiki/Install-on-Ubuntu
Робин Клоуэрс
26

В Ubuntu 15.04 я решил удалить все предыдущие установки * magick, переустановить необходимые пакеты и затем установить ссылку на файл конфигурации:

sudo apt-get purge graphicsmagick graphicsmagick-dbg imagemagick-common imagemagick imagemagick-6.q16 libmagickcore-6-headers libmagickwand-dev graphicsmagick-libmagick-dev-compat
sudo apt-get autoremove
sudo apt-get install imagemagick libmagickwand-dev
sudo ln -s /usr/lib/x86_64-linux-gnu/ImageMagick-6.8.9/bin-Q16/Magick-config /usr/bin/Magick-config
gem install rmagick
Майк
источник
1
Огромное спасибо. Я думаю, что все остальные ответы Ubuntu устарели.
BJMC
6
Спасибо. Это сработало для меня после обновления 14.04 до 16.04.
nroose
1
Это решение не работает в Ubuntu 16.04 LTS, когда при запуске команды sudo apt-get install imagemagick libmagickwand-dev выдается ошибка «Следующие пакеты имеют неудовлетворенные зависимости: libmagickwand-dev: Зависит от: libmagickwand-6.q16-dev, но это не так будет установлен E: Невозможно исправить проблемы, у вас есть поврежденные пакеты "
Динеш Кумар Сони
16

В Ubuntu 14.04


Ниже код работает для меня

sudo apt-get install imagemagick libmagickcore-dev libmagickwand-dev

Затем,

gem install rmagick
Бапу
источник
12

На Ubuntu 12.0.4.2 sudo apt-get install libmagickwand-dev libmagickcore-dev libmagickcore4-extra libgraphviz-dev libgvc5 у меня работало.

graphicsmagick-libmagick-dev-compat установлен, но не содержит заголовочных файлов, поэтому rmagick не будет компилироваться.

Обратите внимание, что вам нужно удалить graphicsmagick-libmagick-dev-compat перед запуском вышеуказанной команды.

Larry
источник
Спасибо за это - это было единственное решение, которое сработало для меня.
alexpls
Вы также должны установить imagemagick: github.com/rmagick/rmagick/wiki/Install-on-Ubuntu
Робин Клоуэрс
7

это сработало для меня ...

sudo apt-get install graphicsmagick-libmagick-dev-compat libmagickwand-dev 

gem install rmagick

...

Building native extensions.  This could take a while...
Successfully installed rmagick-2.13.1
1 gem installed

(Ubuntu 12.0.4 64bit)

Джон Гриффитс
источник
Вы должны также установить imagemagick: github.com/rmagick/rmagick/wiki/Install-on-Ubuntu
Робин Клоуэрс
3

Вы получили сообщение, extconf.rb:1:in 'require': no such file to load -- mkmf (LoadError)потому что пакет ruby1.8-devне установлен. Установите его ( sudo apt-get install ruby1.8-dev) и попробуйте снова.

ANTAGE
источник
3

В Ubuntu 13.10

Этот код работал для меня

sudo apt-get установить graphicsmagick-libmagick-dev-compat libmagickwand-dev

гем установить rmagick

Дипак Ламичхане
источник
2

Чтобы пакет не переставал работать на Ubuntu 12.04.

apt-get install graphicsmagick-libmagick-dev-compat libmagickwand-dev

Это мой гемфайл

gem 'rmagick' 
gem 'mini_magick' 
jmontross
источник
Вы должны также установить imagemagick: github.com/rmagick/rmagick/wiki/Install-on-Ubuntu
Робин Клоуэрс
1

В Ubuntu вы можете запустить:

sudo apt-get install libmagickwand-dev

На Centos вы можете запустить:

sudo yum install gcc ImageMagick-devel make which

Затем установите

gem install rmagick
Махеш Баблу
источник
0

Если вы хотите попробовать установить собственный пакет deb вместо гема, имейте в виду, что librmagick-ruby не работал в Ubuntu 10.04 до самого недавнего времени:

https://bugs.launchpad.net/ubuntu/+source/librmagick-ruby/+bug/518122

Смотрите комментарий № 17 в частности. Я считаю, что это уже исправлено, поэтому теперь apt-get install librmagick-rubyможет "просто работать". В противном случае вот как это сделать самостоятельно из исходного кода.

$ cd /usr/src
$ sudo apt-get build-dep librmagick-ruby
$ sudo apt-get source librmagick-ruby
$ cd librmagick-ruby-2.11.1
$ sudo dch -i
(add changelog entry)
$ sudo dpkg-buildpackage
$ cd ..
$ sudo dpkg -i librmagick-ruby*.deb
Питер Лайонс
источник
0

В Ubuntu 16.04.3:

Это я работал:

sudo apt install imagemagick imagemagick-6.q16

Это означает, что это установленный imagemagick, тогда вы можете запустить RMagick.


источник
1
Это решение не работает в Ubuntu 16.04.3, показывая ошибку "Следующие пакеты имеют неудовлетворенные зависимости: libmagickwand-dev: Зависит от: libmagickwand-6.q16-dev, но не будут установлены E: Невозможно исправить проблемы, Вы держали сломанные пакеты. "
Динеш Кумар Сони
0

Если вы используете Linux, просто запустите эти команды.

 sudo apt-get install imagemagick libmagickwand-dev

а потом

 bundle install

Надеюсь, что это решит вашу проблему.

И если вы используете Mac, просто запустите следующие команды

Прежде всего, отмените связь с установленным вами imagemagick, который не был правильно установлен в последней версии Mac High Sierra, используя.

 brew unlink imagemagick

затем установите последнюю версию imagemagic6, используя команду ниже

 brew install imagemagick@6 && brew link imagemagick@6 --force

Затем установите gem rmagick используя команду ниже

 gem install rmagick 

 bundle install

Это будет прекрасно работать.

Али Хасан Мирза
источник
0

Выполните следующие 3 шага, проверенные на UBUNTU 16.04

sudo apt-get install build-essential imagemagick libmagickwand-dev

#In .bashrc or .bash_profile add below code. Just check the ImageMagick dir name.
export PATH="/usr/lib/x86_64-linux-gnu/ImageMagick-6.8.9/bin-Q16:$PATH"
gem install rmagic #Install Gem
Hrishi
источник