当前位置: 首页 > 工具软件 > Magick++ > 使用案例 >

ubuntu中的 magick++编程问题及编译方法

越昊穹
2023-12-01

举一个最简单的例子:

#include <Magick++.h>

using namespace Magick;

int main(int argc, char ** argv)
{
InitializeMagick(*argv);
Image image("100x100", "white");
image.pixelColor(49, 49, "red");
image.write("red_pixel.jpeg");
return 0;
}

编译方法:

g++ -O2 -o example.o  example.cpp `Magick++-config --cppflags --cxxflags --ldflags --libs`

会报错:terminate called after throwing an instance of 'Magick::ErrorMissingDelegate类似的错误。

如果用convert xx.png xx.jpeg等指令也会报类似错误,原因是没有png及jpeg的库导致的,下载安装这些库方法如下:

搜寻有哪些可用库:

sudo apt-cache search libpng
sudo apt-cache search libjpeg

安装:

sudo apt-get install libpng12-0 libpng12-dev
sudo apt-get install libjpeg62 libjpeg62-dev

 

然后重新编译,参考:ubuntu高版本的 imagemagick及magick++安装

资料参考官网:http://www.imagemagick.org/Magick++/

 类似资料: