2008-09-25 191 views
0

试图安装RMagick gem失败,出现无法找到ImageMagick库的错误,即使我确定已安装它们。错误从gem安装RMagick

从宝石的输出相关的安装rmagick是:

checking for InitializeMagick() in -lMagick... no 
checking for InitializeMagick() in -lMagickCore... no 
checking for InitializeMagick() in -lMagick++... no 
Can't install RMagick 2.6.0. Can't find the ImageMagick library or one of the dependent libraries. Check the mkmf.log file for more detailed information. 

*** extconf.rb failed *** 

而且在寻找mkmf.log显示:

have_library: checking for InitializeMagick() in -lMagick... -------------------- no 

"/usr/local/bin/gcc -o conftest -I. 
-I/usr/local/lib/ruby/1.8/i386-solaris2.10 -I. -I/usr/local/include/ImageMagick -I/usr/local/include/ImageMagick conftest.c -L. - L/usr/local/lib -Wl,-R/usr/local/lib -L/usr/local/lib -L/usr/local/lib -R/usr/local/lib -lfreetype -lz -L/usr/local/lib -L/usr/local/lib -lMagickCore -lruby-static - lMagick -ldl -lcrypt -lm -lc" 
ld: fatal: library -lMagick: not found 
ld: fatal: File processing errors. No output written to conftest 

这是在Solaris 10的x86与ImageMagick的版本6.4.3和RMagick版本2.6.0

如果我需要添加一些东西到LDFLAGS,它不知道那会是什么。我从源代码安装ImageMagick,它应该在通常的地方。即,

# ls -l /usr/local/lib/ | grep -i magick      
drwxr-xr-x 5 root root  512 Sep 24 23:09 ImageMagick-6.4.3/ 
-rw-r--r-- 1 root root 10808764 Sep 25 02:09 libMagickCore.a 
-rwxr-xr-x 1 root root  1440 Sep 25 02:09 libMagickCore.la* 
-rw-r--r-- 1 root root 2327072 Sep 25 02:09 libMagickWand.a 
-rwxr-xr-x 1 root root  1472 Sep 25 02:09 libMagickWand.la* 

的ImageMagick-6.4.3 /不包含任何有趣的,我无法找到任何其他文件,我也许能够指出创业板安装在。

任何意见将不胜感激! 谷歌搜索并没有太大的帮助。

谢谢 -

回答

2

问题已解决。

RMagick无法找到ImageMagick,因为我忽略了构建共享对象(从原始问题的“ls”中可以看到没有安装.so文件)。解决方案是将--with-shared添加到我的配置选项。

然而这导致了其他问题。最值得注意的是,make与libiconv的“未定义符号”消息失败。这是解决通过设置CFLAGS指向libiconv的:

export CFLAGS="-liconv" 

最终,我成功的配置命令为:

./configure --disable-static --with-modules --without-perl --with-quantum-depth=8 --with-bzlib=no --with-libiconv 

,并在此之后,makemake installgem install rmagick所有的工作顺利进行。

感谢,

[R

0

链接器无法在标准位置找到libMagick。也许你在非标准位置安装了ImageMagick,你必须通过LDFLAGS指定?

1

我就遇到了这个问题,在openSUSE 11.4 - 安装包的整个负载之后事实证明,libtool的是缺少的元素....