Не удается установить rmagick gem на Ubuntu 13.04
Когда я пытаюсь установить rmagic с помощью:
gem install rmagic
он дает ошибку:
Building native extensions. This could take a while...
ERROR: Error installing rmagick:
ERROR: Failed to build gem native extension.
/home/biske/.rbenv/versions/2.0.0-p247/bin/ruby extconf.rb
checking for Ruby version >= 1.8.5... yes
checking for gcc... yes
checking for Magick-config... yes
checking for ImageMagick version >= 6.4.9... yes
checking for HDRI disabled version of ImageMagick... yes
checking for stdint.h... yes
checking for sys/types.h... yes
checking for wand/MagickWand.h... no
Can't install RMagick 2.13.2. Can't find MagickWand.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=/home/biske/.rbenv/versions/2.0.0-p247/bin/ruby
Gem files will remain installed in /home/biske/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rmagick-2.13.2 for inspection.
Results logged to /home/biske/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rmagick-2.13.2/ext/RMagick/gem_make.out
Я попытался найти проблему и обнаружил, что мне не хватает libmagickwand-dev. Я попытался установить его с помощью:
sudo apt-get install libmagickwand-dev
но он вызывает ошибку:
The following packages have unmet dependencies:
libmagickwand-dev : Depends: libmagickcore-dev (= 8:6.7.7.10-5ubuntu2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Если я попытаюсь установить его с помощью:
sudo apt-get install libmagickcore-dev
он дает ошибку:
The following packages have unmet dependencies:
libmagickcore-dev : Depends: librsvg2-dev but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Если я попытаюсь установить его с помощью:
sudo apt-get install librsvg2-dev
он дает ошибку:
The following packages have unmet dependencies:
librsvg2-dev : Depends: libglib2.0-dev (>= 2.24.0) but it is not going to be installed
Depends: libgdk-pixbuf2.0-dev (>= 2.23.5-2) but it is not going to be installed
Depends: libcairo2-dev (>= 1.2.0) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Если я попытаюсь установить libglib2.0-dev с помощью
sudo apt-get install libglib2.0-dev
он дает ошибку:
The following packages have unmet dependencies:
libglib2.0-dev : Depends: libglib2.0-0 (= 2.36.0-1ubuntu1) but 2.36.0-1ubuntu2 is to be installed
Depends: libglib2.0-bin (= 2.36.0-1ubuntu1)
E: Unable to correct problems, you have held broken packages.
Если я устанавливаю libglib2.0-0 с помощью:
sudo apt-get install libglib2.0-0
он дает:
libglib2.0-0 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Если я устанавливаю libglib2.0-bin с помощью:
sudo apt-get install libglib2.0-bin
он дает:
Reading package lists... Done
Building dependency tree
Reading state information... Done
libglib2.0-bin is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Те 2 библиотеки установлены, но снова выдаются:
sudo apt-get install libglib2.0-dev
он дает ту же ошибку:
The following packages have unmet dependencies:
libglib2.0-dev : Depends: libglib2.0-0 (= 2.36.0-1ubuntu1) but 2.36.0-1ubuntu2 is to be installed
Depends: libglib2.0-bin (= 2.36.0-1ubuntu1)
E: Unable to correct problems, you have held broken packages.
Что может быть проблемой здесь?
Я использую Ubuntu 13.04, rbenv, ruby 2.0.0, если это имеет значение.
Ответы
Ответ 1
Решение состоит в том, чтобы добавить ppa, где эти libs могут быть найдены.
Добавить PPA:
sudo add-apt-repository ppa:ricotz/testing
Затем обновите список пакетов:
sudo apt-get update
Наконец, установите его с помощью
sudo apt-get install libmagickwand-dev
Ответ 2
попробуйте это
сначала установите imagemagick
sudo apt-get install imagemagick
а затем
sudo apt-get install libmagickwand-dev
Ответ 3
Попробуйте очистить свой apt-репозиторий и сначала удалить все разбитые пакеты:
sudo apt-get update
sudo apt-get autoclean
sudo apt-get clean
sudo apt-get autoremove
Если система идентифицирует любые сломанные пакеты, принудительно удалите их (замените package_name
на свой):
sudo dpkg --remove -force --force-remove-reinstreq package_name
Затем снова установите все отсутствующие пакеты.
Ответ 4
Вам нужно только установить:
sudo apt-get install libmagickwand-dev
Ответ 5
Вот хороший пример этого blog
Следующая команда решит вашу проблему. Это помогло мне установить rmagick.
sudo apt-get install libdjvulibre-dev libjpeg-dev libtiff-dev libwmf-dev libmagickcore-dev libmagickwand-dev libmagick++-dev
Ответ 6
Это сработало для меня:
- sudo apt-get install libcairo2 = 1.14.6-1 --reinstall
- sudo apt-get install libmagickwand-dev
- sudo gem install rmagick