Magick:这个图像格式'PNG'没有解码代表(使用FFTW和Magick ++)

时间:2015-05-09 00:42:09

标签: imagemagick fftw libpng

我试图在远程服务器上安装FFTW和ImageMagick,我有 root访问权限。我引用this post并在我的bashrc中添加以下行。

export PATH=$PATH:~/usr/bin  
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/usr/lib  
export C_INCLUDE_PATH=$C_INCLUDE_PATH:~/usr/include  
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:~/usr/include
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:~/usr/lib/pkgconfig

对于 FFTW 安装,我运行了命令

./configure --prefix=/home/foo/usr --enable-openmp make make install

对于 libpng ImageMagick ,我运行了命令

./configure --prefix=/home/foo/usr make make install

要编译,

g++ main.cpp -o main 'Magick++-config --cppflags --cxxflags --ldflags --libs' 'pkg-config fftw3 --libs' -Wall

编译成功但尝试运行程序时出现以下错误

terminate called after throwing an instance of 'Magick::ErrorMissingDelegate' what(): Magick: no decode delegate for this image format PNG' @ error/constitute.c/ReadImage/501

当我跑DELEGATES bzlib djvu fftw fontconfig freetype jbig jpeg jng jp2 lcms2 lqr lzma openexr pango png rsvg tiff x11 xml wmf zlib

时,我得到了convert -list configure

任何人都可以帮我解决这个问题吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我刚刚解决了这个问题!即使代理人在列表中有 png ,但我在回到./configure时会回顾日志, - with-png 的结果是。因为我把libpng放在/usr,所以正确的命令是./configure --prefix=/home/foo/usr LDFLAGS='-L/home/foo/usr/lib' CPPFLAGS='-I/home/foo/usr/include'