Компиляция Cairo с поддержкой Qt для MinGW - PullRequest
0 голосов
/ 03 августа 2011

Я пытался собрать cairo как статическую библиотеку с поддержкой экспериментальных функций Qt cairo (я не могу использовать официальные бинарные выпуски GTK).Моя установка Qt не имеет pkg-config в Mingw, поэтому я решил, что будет проще всего кросс-компилировать cairo на linux.

Используя этот кросс-компилятор http://mingw -cross-env.nongnu.org / и команды:

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

Я получил ошибку, сгенерированную -Werror о неявном объявлении функции, однако после изменения make-файла сборка cairo выполнена правильно.

Я копирую содержимое/ tmp / cairo для моей установки MinGW под Windows, однако, когда я пытаюсь скомпилировать простую тестовую программу, я получаю сообщение об ошибке при соединении:

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
...