在 Qt Creator 中使用 Magick++

Using Magick++ in Qt Creator

我正在创建一个带有我单独编写的后端表示的 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: error: Magick++.h: No such file or directory #include < Magick++.h>

我在INCLUDEPATH中添加了Magick++.h的路径,但是现在出现类似这样的错误:

/home/tpope/obeyYourThirst/qtSpriteEditor/backend/sprite.cpp:66: error: undefined reference to `Magick::InitializeMagick(char const*)'

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

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

我已添加:

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

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

到我的 .pro 文件,我能够添加:

#include <Magick++.h>

在我的程序没有编译错误的情况下,然后编译一个简单的示例(只需制作一个带有几个彩色像素的动画 .gif)

这显然使交叉编译之类的事情变得有点棘手(我不知道如何引用国外库),但这是另一个问题。