在Qt Creator中使用Magick ++

时间:2015-11-11 20:26:31

标签: c++ qt imagemagick magick++

我正在创建一个Qt小部件,其中包含我单独编写的后端表示。后端使用Magick ++,我可以从命令行编译它:

  

g ++ -c ../SpriteCreator/WriteGIF.cpp sprite.cpp -I ../SpriteCreator/ Magick++-config --cxxflags --cppflags Magick++-config --ldflags --libs -O2

但是当我尝试编译项目Qt Creator它告诉我

  

/home/tpope/obeyYourThirst/qtSpriteEditor/backend/sprite.cpp:15:错误:Magick ++。h:没有这样的文件或目录    #include< Magick ++ h取代;

我为Magick ++添加了路径.h到INCLUDEPATH,但现在它有类似的错误:

  

/home/tpope/obeyYourThirst/qtSpriteEditor/backend/sprite.cpp:66:错误:未定义引用`Magick :: InitializeMagick(char const *)'

每次使用Magick功能。它似乎不包括图书馆。我如何在Qt Creator中做到这一点?

1 个答案:

答案 0 :(得分:0)

由于Qt Creator中的.pro文件(据我所知)用于生成Makefile,我们可以使用make的能力在shell上运行程序并保存其输出。

我已添加:

QMAKE_CXXFLAGS += $(shell Magick++-config --cppflags --cxxflags)

LIBS += $(shell Magick++-config --ldflags --libs)

到我的.pro文件,我可以添加:

#include <Magick++.h>

到我的程序没有编译错误,然后编译一个简单的例子(刚刚推出一个带有几个彩色像素的动画.gif)

这显然会让交叉编译变得有点棘手(我不知道如何引用外国图书馆),但这又是一个问题。