2012-04-26 6 views
10

Parece que está buscando el archivo libmagic.so.1. Tengo ese archivo. Se encuentra en/usr/lib64. No estoy ejecutando esta instalación como usuario root.Tiene dificultades para instalar la gema ruby-filemagic en el nuevo servidor RHEL6

También estoy usando rvm y Bundler. Este es el resultado de mi mando "paquete", cuando se llega a la línea de rubí filemagic en mi Gemfile:

[[email protected] ext]$ ruby extconf.rb --with-magiclib 
checking for magic_open() in -ltrue... no 
*** ERROR: missing required library to compile this module 
*** 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. 

ACTUALIZACIÓN:

Éstos son los resultados de la mkmf.log:

have_library: checking for magic_open() in -ltrue... -------------------- no 

"gcc -o conftest -I. -I/usr/local/rvm/rubies/ruby-1.8.7-p358/lib/ruby/1.8/x86_64-linux -I. -g -O2 -fPIC conftest.c -L. -L/usr/local/rvm/rubies/ruby-1.8.7-p358/lib -Wl,-R/usr/local/rvm/rubies/ruby-1.8.7-p358/lib -L. -rdynamic -Wl,-export-dynamic  -lruby-static -ltrue -lrt -ldl -lcrypt -lm -lc" 
conftest.c: In function ‘t’: 
conftest.c:3: error: ‘magic_open’ undeclared (first use in this function) 
conftest.c:3: error: (Each undeclared identifier is reported only once 
conftest.c:3: error: for each function it appears in.) 
checked program was: 
/* begin */ 
1: /*top*/ 
2: int main() { return 0; } 
3: int t() { void ((*volatile p)()); p = (void ((*)()))magic_open; return 0; } 
/* end */ 

"gcc -o conftest -I. -I/usr/local/rvm/rubies/ruby-1.8.7-p358/lib/ruby/1.8/x86_64-linux -I. -g -O2 -fPIC conftest.c -L. -L/usr/local/rvm/rubies/ruby-1.8.7-p358/lib -Wl,-R/usr/local/rvm/rubies/ruby-1.8.7-p358/lib -L. -rdynamic -Wl,-export-dynamic  -lruby-static -ltrue -lrt -ldl -lcrypt -lm -lc" 
/usr/bin/ld: cannot find -ltrue 
collect2: ld returned 1 exit status 
checked program was: 
/* begin */ 
1: /*top*/ 
2: int main() { return 0; } 
3: int t() { magic_open(); return 0; } 
/* end */ 

No sé qué hacer para que esto funcione.

+0

¿Qué hay en 'mkmf.log'? – Linuxios

+0

He actualizado mi pregunta anterior – AKWF

Respuesta

8

que tenía que hacer:

yum install file-devel 

que al parecer contiene los archivos de cabecera libmagic que la gema de rubíes filemagic requiere con el fin de compilar. Funcionó como un campeón después de eso.

17

Tuve el mismo problema en Ubuntu 12.04. Acaba de instalar paquete a través de libmagic-dev siguiente comando:

sudo apt-get install libmagic-dev 
+2

para ser específico: 'sudo apt-get install libmagic-dev' – mmell

1

que tenían el mismo problema en OpenSuse 11.3. Esto ayudó:

zypper install file-devel 
9

En un Mac, utilizando homebrew:

sudo brew install libmagic 
+1

Hola, todavía estoy obteniendo' comprobación de magic_open() en -lmagic ... no' ¿tengo alguna idea? – AJP

+0

Primero asegúrese de que la libmagic realmente se instaló correctamente. Pruebe 'ls -al/usr/local/include/| grep magic' y verifique que' magic.h' esté allí) – troelskn

Cuestiones relacionadas