Art*_*rta 13 ruby-1.9 carrierwave minimagick ruby-on-rails-3.2
我正在将我的应用程序升级到Ruby 1.9上的Rails 3.2.我不得不放弃attachment_fu.Carrierwave似乎是明显的替代品.在这个阶段,我将文件上传到文件系统(还没有云文件).
我在Lion,XCode 4.3.2,安装了命令行工具.运行:
$ brew doctor
# Your system is raring to brew.
Run Code Online (Sandbox Code Playgroud)
我可以在此配置中上传和调整图像大小:
我可以在新配置中上传图片:
(后跟$ bundle update)但调整大小使用mini_magick返回此错误消息:
"File Failed to manipulate with MiniMagick, maybe it is not an image Original Error: MiniMagick::Invalid", where File is the carrierwave uploader.
Run Code Online (Sandbox Code Playgroud)
FileUploader包含:
include CarrierWave::MiniMagick
def store_dir .. end # the shipped default
process :resize_to_limit => [500, 600]
Run Code Online (Sandbox Code Playgroud)
我的附件类(带mount_uploader :file, FileUploader)是的父Portrait,ReferenceLetter以及其他附件类型的类.各安装类从继承Attachment,是:polymorphic => true和belongs_to :attachable(用户),这反过来,has_many :portraits,:reference_letters等:as => :attachable.
这些都没有奏效(从carrierwave的已知问题页面链接):
我不想按照此处的建议手动安装ImageMagick:
carrierwave + mini_magick gems =不是图像错误
我正在使用Homebrew.帮助太棒了.谢谢.
Iva*_*nko 16
今天与同样的错误战斗.这个问题是不是在mini_magick,问题是在代表们的选择在你的ImageMagick
如果你跑
convert -list configure
Run Code Online (Sandbox Code Playgroud)
你应该有这样的东西
Name Value
-----------------------------------------------------------------
...
CONFIGURE ./configure '--with-bzlib=yes' '--with-fontconfig=yes' '--with-freetype=yes' '--with-gslib=yes' '--with-gvc=yes' '--with-jpeg=yes' '--with-jp2=yes' '--with-png=yes' '--with-tiff=yes' '--disable-shared'
CONFIGURE_PATH /usr/local/etc/ImageMagick/
COPYRIGHT Copyright (C) 1999-2012 ImageMagick Studio LLC
...
DELEGATES bzlib djvu fontconfig freetype gvc jpeg jng jp2 lcms lqr openexr png rsvg tiff x11 xml zlib
...
VERSION 6.7.5
Run Code Online (Sandbox Code Playgroud)
但在我的情况下,关键DELEGATES只有xml和zlib值
DELEGATES xml zlib
Run Code Online (Sandbox Code Playgroud)
该解决方案是从源代码安装的ImageMagick,并添加PARAMS运行./configure
1. wget http://www.imagemagick.org/download/ImageMagick.tar.gz
2. tar xvfz ImageMagick.tar.gz
3. cd ImageMagick
4. ./configure --with-bzlib=yes --with-fontconfig=yes --with-freetype=yes --with-gslib=yes --with-gvc=yes --with-jpeg=yes --with-jp2=yes --with-png=yes --with-tiff=yes --disable-shared
5. make
6. sudo make install
7. sudo ldconfig /usr/local/lib
8. run again "convert -list configure" and look at changes
Run Code Online (Sandbox Code Playgroud)
您可以在http://www.imagemagick.org/script/advanced-unix-installation.php找到MacOS的安装说明.
UPDATE
由于某些原因,系统可以没有jpeg转换库.要解决此问题,您可以使用apt-get或ppa安装imagemagick以及所有必需的依赖项,或者尝试安装manualy
sudo apt-get install libjpeg62
Run Code Online (Sandbox Code Playgroud)
点击此处查看更多信息https://askubuntu.com/questions/211627/how-to-add-support-for-the-jpeg-image-format
更新01/26/2013
安装libpng
请点击此链接http://www.libpng.org/pub/png/libpng.html并找到"源代码"块.复制最新版本的链接
1. wget http://download.sourceforge.net/libpng/libpng-1.5.13.tar.gz
2. tar xvfz libpng-1.5.13.tar.gz
3. cd libpng-1.5.13/
4 ./configure
5. make
6. sudo make install
7. Rebuild imagemagick
Run Code Online (Sandbox Code Playgroud)
另一种获得JPEG支持的方法
1. curl -O http://www.ijg.org/files/jpegsrc.v8c.tar.gz
2. tar zxvf jpegsrc.v8c.tar.gz
3. cd jpeg-8c/
4. ./configure
5. make
6. sudo make install
7. Rebuild imagemagick
Run Code Online (Sandbox Code Playgroud)
JGr*_*ubb 11
2014年2月
我刚刚遇到这个问题,我很高兴能从源头上编译ImageMagick,但我想先尝试一下brew update && brew upgrade imagemagick.
==> Upgrading 1 outdated package, with result:
imagemagick 6.8.7-7
Run Code Online (Sandbox Code Playgroud)
有效.
| 归档时间: |
|
| 查看次数: |
14026 次 |
| 最近记录: |