使用Qt支持MinGW编译Cairo

时间:2011-08-03 12:45:12

标签: c++ qt mingw cross-compiling cairo

我一直在尝试构建cairo作为静态库,支持cairo的实验性Qt功能(我不能使用官方的GTK二进制版本)。我的Qt安装在Mingw中没有pkg-config所以我决定在linux上交叉编译cairo是最容易的。

使用此交叉编译器http://mingw-cross-env.nongnu.org/和命令:

./configure --prefix=/tmp/cairo --host=i686-pc-mingw32 --enable-qt
make
make install

我收到了-Werror生成的关于函数隐式声明的错误,但是在正确修改了makefile cairo之后。

我将/ tmp / cairo的内容复制到我在Windows下的MinGW安装中但是当我尝试编译一个简单的测试程序时,我在链接时收到错误:

undefined reference to `cairo_qt_surface_create'

代码:

QPainter p(viewport());

cairo_surface_t *surface = cairo_qt_surface_create(&p);
cairo_t *cr = cairo_create(surface);

我正在使用qmake进行此测试,并将以下内容作为额外的库包含在内:

-lcairo -lcairo-gobject -lpangocairo-1.0 -lpango-1.0 -lgobject-2.0

0 个答案:

没有答案