Ошибка компиляции при использовании librsvg - PullRequest
0 голосов
/ 24 сентября 2011

Я использую librsvg в моих файлах C для растеризации SVG, но как только я включаю rsvg.h, я начинаю получать следующую ошибку:

/ usr / include / librsvg-2.0 / librsvg / rsvg.h: 29: 25: фатальная ошибка: glib-object.h: нет такого файла или каталога

  1. Кто-нибудь знает, почему это происходит, икак от этого избавиться?Я попытался включить путь к заголовкам glib, но затем он снова начинает сообщать о других отсутствующих заголовках.

  2. Есть ли какая-либо другая библиотека с открытым исходным кодом, которую я могу использовать для растеризации SVG в C / C ++?

Ответы [ 3 ]

2 голосов
/ 24 сентября 2011

Возможно, вы захотите использовать pkg-config, чтобы получить нужные флаги для добавления, например:

g++ -c -o renderSVG.o renderSVG.cc $(pkg-config --cflags librsvg-2.0)
g++ -o renderSVG renderSVG.o $(pkg-config --libs librsvg-2.0)
0 голосов
/ 12 октября 2011

У меня та же проблема с использованием автоинструментов в Ubuntu Natty.Я добавил в configure.ac

PKG_CHECK_MODULES(LIBRSVG, librsvg-2.0 >= 2.0,
            [],
            [AC_MSG_FAILURE([librsvg not found])]
            )

и в Makefile.am

myexe_CFLAGS=@LIBRSVG_CFLAGS@ 
myexe_LDFLAGS=@LIBRSVG_LIBS@
0 голосов
/ 24 сентября 2011

Попробуйте включить glib:

gcc renderSVG.cc -I/usr/include/librsvg-2.0/librsvg/ -I/usr/include/glib-2.0
...