LINUX.ORG.RU

Помогите разобраться с подключением библиотеки libxml++

 , , ,


0

1

Debian Wheezy x64, установлена libxml++2.6-dev. Файлы этой библиотеки лежат в /usr/include/libxml++-2.6/libxml++. Я создал пустой Plain C++ Project (using cmake) в QtCreator'e, заинклюдил вот так

#include <libxml++-2.6/libxml++/libxml++.h>

а при попытке сборки получаю вот что

/usr/include/libxml2/libxml/tree.h:16:31: fatal error: libxml/xmlversion.h: Нет такого файла или каталога

как и куда правильно прописать пути к библиотекам? есть подозрение, что это задача cmake? ткните носом пожалуйста.

libxml2-dev установлен естественно.

★★★★

1. Кривое, но решение: Кури include_directories в CMake: http://www.cmake.org/cmake/help/v2.8.8/cmake.html#command:include_directories

Тебе нужно добавить /usr/include/libxml++-2.6 в include и писать #include <libxml++/libxml++.h>.

2. А по-нормальному, тебе стоит использовать средства поиска либ CMake, но это сложнее, т.к. встроенной искалки LibXML++ вроде нет.

Pavval ★★★★★ ()
Ответ на: комментарий от Pavval

Cmake может успользовать поиск pkg-config, который поддерживает libxml++

O02eg ★★★★★ ()

спасибо, попробую.

WRG ★★★★ ()
Ответ на: комментарий от Pavval

пошел по пути наименьшего сопротивления, заюзал первый способ, получилась вот такая простынка

include_directories(/usr/include/libxml++-2.6)
include_directories(/usr/include/glibmm-2.4)
include_directories(/usr/lib/x86_64-linux-gnu/glibmm-2.4/include)
include_directories(/usr/include/glib-2.0)
include_directories(/usr/lib/x86_64-linux-gnu/glib-2.0/include)
include_directories(/usr/lib/libxml++-2.6/include)
это нормально?

WRG ★★★★ ()
Ответ на: комментарий от anonymous

вместо того чтобы кукарекать, лучше бы показал как правильно, или топай лесом.

WRG ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.