安装rmagick(2.16.0)时出现错误 [我尝试了复制中提供的所有选项,但问题仍然存在]。

5

我使用的是Ubuntu 16.04 , 在gemfile文件中我有gem "rmagick",当我运行bundle时会显示以下内容:

An error occurred while installing rmagick (2.16.0), and Bundler cannot
continue.
Make sure that `gem install rmagick -v '2.16.0'` succeeds before bundling.

如上所建议,当我尝试运行gem install rmagick -v '2.16.0'时,它显示如下信息:

Building native extensions.  This could take a while...
ERROR:  Error installing rmagick:
    ERROR: Failed to build gem native extension.

    current directory: /home/faisal/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rmagick-2.16.0/ext/RMagick
/home/faisal/.rbenv/versions/2.3.1/bin/ruby -r ./siteconf20160926-26223-16sn0dg.rb extconf.rb
checking for gcc... yes
checking for Magick-config... no
checking for pkg-config... yes
Package MagickCore was not found in the pkg-config search path.
Perhaps you should add the directory containing `MagickCore.pc'
to the PKG_CONFIG_PATH environment variable
No package 'MagickCore' found
checking for outdated ImageMagick version (<= 6.4.9)... *** 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/faisal/.rbenv/versions/2.3.1/bin/$(RUBY_BASE_NAME)

To see why this extension failed to compile, please check the mkmf.log which can be found here:

  /home/faisal/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/extensions/x86_64-linux/2.3.0-static/rmagick-2.16.0/mkmf.log

extconf failed, exit code 1

Gem files will remain installed in /home/faisal/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/rmagick-2.16.0 for inspection.
Results logged to /home/faisal/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/extensions/x86_64-linux/2.3.0-static/rmagick-2.16.0/gem_make.out

我尝试了许多不同的方法,这些方法在不同的问题中提供,但是都没有起作用。


可能是安装rmagick出错:ERROR: Failed to build gem native extension的重复问题。 - Deepak Mahakale
@Deepak 我尝试了在重复问题中提供的所有解决方案,但仍然存在相同的问题。 - Muhammad Faisal Iqbal
13个回答

30

在MacOS中,您可以这样做:

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

1
实际上,它解决了我的问题。 - Astm
1
可悲的是,两年过去了,这仍然是必要的。 - fatfrog
谢谢。在我的 2017 年款 MacBook Pro 上 Big Sur 系统上运行正常。 - aRtoo

12

试试这个,你需要在Ubuntu上运行以下命令

sudo apt-get install libmagick++-dev
sudo apt-get install imagemagick

然后尝试安装

gem install rmagick

在安装libmagick++-dev时,它显示:“以下软件包存在无法满足的依赖关系:libmagick++-dev:依赖于libmagick++-6.q16-dev,但不会被安装。E: 无法纠正问题,您拥有损坏的软件包。” - Muhammad Faisal Iqbal
使用sudo apt-get clean清除缓存,使用sudo apt-get autoremove,然后使用sudo apt-get update更新,接着按照我们上面提到的步骤尝试安装。 - vipin
我已经执行了“清理、自动删除和更新”的操作,并按照这些步骤进行了操作,但问题仍然存在。 - Muhammad Faisal Iqbal

2
在Ubuntu上,您首先应该安装这个。
sudo apt-get install libmagickwand-dev

然后安装 gem install rmagick

2
我唯一有效的解决方法是:
brew unlink pkgconfig
bundle install
brew link pkgconfig

1
在 Fedora 上(当我安装 Redmine 时),这对我起作用:
sudo dnf install ImageMagick-devel
bundle install

1
在Mac/OSX上,确保你安装了brew install imagemagick@6(不是7)。

1

0

适用于Centos 6及以上版本

yum install ImageMagick-devel

bundle install

0

试试这个

$ sudo apt-get install libmagick++-dev

然后

bundle install

并安装Imagemagick

$ sudo apt-get install imagemagick

然后,安装rmagick宝石:

$ sudo gem install rmagick

首先,命令显示如下信息:"以下软件包存在未满足的依赖关系:libmagick++-dev : 依赖于 libmagick++-6.q16-dev,但是无法安装"。 - Muhammad Faisal Iqbal
添加 PPA:sudo add-apt-repository ppa:ricotz/testing 然后更新软件包列表:sudo apt-get update 接着使用 sudo apt-get install libmagickwand-dev - vipin
@vipin 不应使用sudo权限安装gems,尝试在项目级别安装gems以避免长期损坏系统。 - Bijendra
尝试参考此链接。虽然不确定是否是相同的问题。http://askubuntu.com/questions/140246/how-do-i-resolve-unmet-dependencies-after-adding-a-ppa - Bijendra

0

虽然有点晚,但以下方法适用于我的Ubuntu 16.04:

首先,您需要启用sources.list中的所有deb-src行:

sudo vi /etc/apt/sources.list

然后进行apt更新:

sudo apt update

现在,您应该能够安装所有所需的软件包:

sudo apt install libfreetype6-dev libfontconfig1-dev libpng-dev libwmf-dev libpango1.0-dev librsvg2-dev libmagickcore-dev libmagickwand-dev imagemagick

(个人建议您在调试期间逐个安装libmagickcore-devlibmagickwand-devimagemagick,但您也可以一次性安装它们)

希望这可以帮助到您。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接