rubygems rmagick centos5

rubygems - Problema al instalar RMagick rubygem en Centos 5



centos5 (7)

Tengo problemas para instalar el rubygem de RMagick en Centos 5. He seguido los pasos detallados en http://rmagick.rubyforge.org/install2-linux.html pero cuando lo intento:

sudo gem install rmagick

el resultado es:

Building native extensions. This could take a while... ERROR: Error installing rmagick: ERROR: Failed to build gem native extension. /usr/local/bin/ruby extconf.rb checking for Ruby version >= 1.8.5... yes checking for gcc... yes checking for Magick-config... no Can''t install RMagick 2.11.0. Can''t find Magick-config in /usr/bin:/bin *** 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=/usr/local/bin/ruby Gem files will remain installed in /usr/local/lib/ruby/gems/1.8/gems/rmagick-2.11.0 for inspection. Results logged to /usr/local/lib/ruby/gems/1.8/gems/rmagick-2.11.0/ext/RMagick/gem_make.out

El directorio / usr / local / bin contiene Magick-config pero no he podido conseguir rubygems para mirar allí. Intenté lo siguiente pero el resultado fue el mismo:

sudo gem install rmagick -- --with-opt-dir=/usr/local/bin

Cualquier sugerencia sera apreciada.


¡Así que finalmente he logrado instalar la versión 1.15.17 de rmagick rubygem! Esto es lo que hice:

  1. Desinstaló ImageMagick 6.5.4-9 y las bibliotecas de delegado que había instalado desde la fuente
  2. sudo yum install ImageMagick
  3. sudo yum install ImageMagick-devel
  4. curl -O http://www.zacharywhitley.com/linux/rpms/fedora/core/6/i386/msttcorefonts-2.0-1.noarch.rpm
  5. sudo rpm -ivh msttcorefonts-2.0-1.noarch.rpm
  6. ln -s /usr/share/fonts/msttcorefonts/ /usr/share/fonts/default/TrueType
  7. sudo gem install rmagick -v 1.15.17 --no-rdoc --no-ri

Las entradas del blog de David Bock y Will fueron invaluables.


Centos 5.5 el ImageMagick es heredado, por lo tanto, instale desde la fuente para poder usar el rmagick.

Obtener la fuente RPM

wget ftp://ftp.kddlabs.co.jp/graphics/ImageMagick/linux/SRPMS/ImageMagick.src.rpm rpm -ivh --nomd5 ImageMagick.src.rpm cd /usr/src/redhat/SPECS rpmbuild -ba ImageMagick.spec

Probablemente obtendrá error de dependencia para:

  • perl-devel
  • Jasper Devel
  • djvulibre-devel

Agregue a su /etc/yum.repos.d/dag.repo

[dag] name=Dag RPM Repository for CentOS5 baseurl=http://ftp.riken.jp/Linux/dag/redhat/el5/en/$basearch/dag/ enabled=0 gpgcheck=1

Luego importe la clave GPG e instale el djvulibre-devel

rpm --import http://ftp.riken.jp/Linux/dag/RPM-GPG-KEY.dag.txt yum --enablerepo=dag install djvulibre-devel

Luego verifica si puedes hacer el RPM:

rpmbuild -ba ImageMagick.spec

Si obtiene el error de dependencia perl-devel.

yum install perl

Luego edite ImageMagick.spec y reemplace " perl-devel " por " perl ", guarde y rpmbuild nuevamente.

rpmbuild -ba ImageMagick.spec

Así que instale las otras dependencias:

yum install freetype yum install gd-devel wget http://www.osresources.com/files/centos-windows-fonts/msfonts.tbz mkdir /usr/share/fonts/default/TrueType tar xvjpf msfonts.tbz -C /usr/share/fonts/default/TrueType/

Vamos a instalarlo:

cd /usr/src/redhat/RPMS/i386 rpm -Uvh ImageMagick-*

Después de todo, puedes probar si tu RMagick está instalado:

ruby -rrubygems -e "require ''RMagick''; puts Magick::Long_version;"

Residencia en:

hi.baidu.com/rainchen/blog/item/089ef7364497de320a55a9a3.html

mobile-dev.izanagi-izanami.net/blog/?p=48


La respuesta de rubiojr funcionó para mí, pero el rbel.co está abajo en este momento. Puedes usar rbel.frameos.org en su lugar:

rpm -Uvh http://rbel.frameos.org/rbel5 yum install ImageMagick-devel ImageMagick-c++-devel gem install rmagick


Recibí este error después de seguir las instrucciones de la respuesta más votada:

RMagick: unable to read font `(null)''.

así que tengo algo que agregar al paso 7, tomado de una actualización del blog de David Bock:

http://blog.codesherpas.com/on_the_path/2009/09/installing-centos-5-imagemagick-and-rmagick-september-2009-edition.html

gem install rmagick -v 1.15.17 --no-rdoc --no-ri -- --disable-htmldoc

deshabilitar la documentación html es crucial para evitar más errores si los archivos de fuentes hacen que el rmagick sea infeliz. Solo el resultado de aproximadamente 2 horas de lucha con este problema.


Recientemente, hice backporting ImageMagick 6.5.4.7 de CentOS6 a CentOS5, por lo que la instalación de rmagick debería ser más fácil ahora:

rpm -Uvh http://rbel.co/rbel5 yum install ImageMagick-devel ImageMagick-c++-devel gem install rmagick


Resolví esto en RHEL 5.4 al simular temporalmente /usr/local/bin/Magick-config a /usr/bin/Magick-conf , por lo que la instalación de gemas podría encontrar este ejecutable de Magick-config.

En mi caso, instalé ImageMagick desde la fuente con --prefix=/usr/local . Por alguna razón, la instalación de gemas no quiso buscar allí la configuración, incluso con la gem install --local ../rmagick-2.12.2.gem -- -with-opt-dir=/usr/local/bin . Ejecutar yum install ImageMagick-devel obtendría el binario allí, pero la instalación de gemas diría que ImageMagick era la versión incorrecta.


rmagick es notoriamente difícil de instalar debido a las dependencias de otros paquetes, etc. Acabo de pasar por este juego en Ubuntu y el truco fue simplemente instalar los paquetes correctos, incluidos los paquetes dev, etc. No estoy familiarizado con CentOS, pero alguien lo hará. probablemente chime con los paquetes adecuados para eso.

Si todo lo demás falla, la construcción e instalación de ImageMagick desde la fuente generalmente puede funcionar.

Editar: En cuanto a una pregunta relacionada, veo lo siguiente:

En algunas plataformas (CentOS 5.2), tuve que instalar versiones específicas de RMagick porque los repositorios predeterminados para mi administrador de paquetes (yum) solo tenían versiones antiguas de las bibliotecas de desarrollo de RMagick. Instalé esta versión a través de:

gem install rmagick -v 1.15.13