运行 Rails 3.2 应用程序时出现 Rmagick 错误
Posted
技术标签:
【中文标题】运行 Rails 3.2 应用程序时出现 Rmagick 错误【英文标题】:Rmagick error while running Rails 3.2 application 【发布时间】:2016-10-03 02:48:48 【问题描述】:我正在开发一个旧项目,该项目具有 Ruby 版本 1.9.3p 和 Rails 3.2.13
这是我的 Gemfile:
gem 'rails', '3.2.13'
gem 'mysql2', '~> 0.4.1', :group => [:production, :staging]
gem "paperclip", "~> 2.3"
gem "rmagick", "~> 2.13.1", :require => 'RMagick'
当我运行 bundle install 时,我收到如下错误:
安装 rmagick (2.13.2) 和 Bundler 时出错 无法继续。确保
gem install rmagick -v '2.13.2'
在捆绑之前成功。
当我运行上述命令时,我收到以下错误:
abcuser@myvm:~/Desktop/report_master$ gem install rmagick -v '2.13.2' 构建原生扩展。这可能需要一段时间... 错误:错误 安装 rmagick:错误:无法构建 gem 原生扩展。
current directory: /home/abcuser/.rvm/gems/ruby-1.9.3-p551@proj/gems/rmagick-2.13.2/ext/RMagick
/home/abcuser/.rvm/rubies/ruby-1.9.3-p551/bin/ruby -r ./siteconf20160603-8257-drbei5.rb extconf.rb 检查 Ruby 版本
= 1.8.5...是检查 gcc...是检查 Magick-config...否无法安装 RMagick 2.13.2。在中找不到 Magick-config /home/abcuser/.rvm/gems/ruby-1.9.3-p551@proj/bin:/home/abcuser/.rvm/gems/ruby-1.9.3-p551@global/bin:/home/abcuser/。 rvm/rubies/ruby-1.9.3-p551/bin:/home/abcuser/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin :/bin:/usr/games:/usr/local/games
* extconf.rb failed * 由于某种原因无法创建 Makefile,可能缺少必要的库和/或头文件。查看 mkmf.log 文件以获取更多详细信息。您可能需要配置 选项。
提供的配置选项:--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/abcuser/.rvm/rubies/ruby-1.9.3-p551/bin/ruby
要查看此扩展无法编译的原因,请查看 mkmf.log 可以在这里找到:
/home/abcuser/.rvm/gems/ruby-1.9.3-p551@proj/extensions/x86-linux/1.9.1/rmagick-2.13.2/mkmf.log
extconf 失败,退出代码 1
Gem 文件将继续安装在 /home/abcuser/.rvm/gems/ruby-1.9.3-p551@proj/gems/rmagick-2.13.2 检查。结果记录到 /home/abcuser/.rvm/gems/ruby-1.9.3-p551@proj/extensions/x86-linux/1.9.1/rmagick-2.13.2/gem_make.out
请帮我解决这个错误。
【问题讨论】:
【参考方案1】:错误:安装 rmagick 时出错:错误:无法构建 gem 原生扩展。
这可能是因为您没有安装node.js
:
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs
或者因为,简单来说,你没有安装 RMagick:
sudo apt-get install imagemagick libmagickwand-dev
【讨论】:
【参考方案2】:一点建议: 注意 ImageMagick 安全问题。 know more
【讨论】:
确实不错的建议。以上是关于运行 Rails 3.2 应用程序时出现 Rmagick 错误的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio 3.2 上的 AndroidX - 运行应用程序时出现验证错误
运行rails应用程序时出现webpacker错误。 'TypeError:environment.plugins.set不是函数'
尝试将 Rails 应用程序部署到 heroku 时出现 Uglifier 错误