eclipse CDT Ошибка включения библиотек glib - PullRequest
5 голосов
/ 17 декабря 2010

У меня есть созданный проект на основе C с CDT из исходного кода pidgin. Все работает нормально, но там написано unresolved inclusion для следующих двух библиотек:

#include <libxml/parser.h>
#include <glib.h>

Как я могу это исправить?
Я не могу использовать функции наведения CDT, открытых объявлений и т. Д. С функциями этой библиотеки, и мне приходится вручную просматривать каталоги. Я попытался добавить каталог lib в свойствах проекта -> пути и символы.

Ответы [ 2 ]

6 голосов
/ 06 января 2011

Во-вторых, вы должны убедиться, что пакеты разработчика для glib и libxml установлены.В Ubuntu вы можете набрать:

apt-get install libxml2-dev libglib2.0-dev

Затем вы посмотрите с помощью pkg-config, какие каталоги должны быть включены

~> pkg-config --cflags libxml-2.0
-I/usr/include/libxml2
~> pkg-config --cflags glib-2.0
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include

Выше приведены файлы заголовков, которые должны быть настроены вНастройки компилятора (в CDT вы должны удалить '-I').Ниже приведены библиотеки, которые нужны компоновщику, поэтому настройте их в настройках компоновщика в CDT и уберите '-l'

 ~>pkg-config --libs libxml-2.0
 -lxml2
 ~>pkg-config --libs glib-2.0
 -lglib-2.0

Если вы все еще не получили разрешения, попробуйте очистить проект в CDT.

Кстати: каталоги и библиотеки include не должны быть настроены в C / C ++ -> Пути и символы (хотя это также должно работать), но я всегда настраиваю их в C / C ++ Build-> Settings

0 голосов
/ 16 мая 2018

Для меня это сработало, перейдя в Project Properties-> C / C ++ General-> Paths and Symbols-> Tab "Includes" и добавив запись под "GNU C" с путем к библиотеке /usr/include/glib-2.0

Eclipse Oxygen CDT в Ubuntu 18.04 LTS

...