Итак, вот самая простая в мире программа glib:
#include <glib.h>
Я пытаюсь скомпилировать его с gcc test.c
и получаю:
test.c:1:18: error: glib.h: No such file or directory
Поэтому я убеждаюсь, что у меня есть нужные пакеты:
# dpkg -l | grep libglib
ii libglib-perl 1:1.183-1 Perl interface to the GLib and GObject libra
ii libglib1.2-dev 1.2.10-19build1 The GLib library of C routines (development)
ii libglib1.2ldbl 1.2.10-19build1 The GLib library of C routines
ii libglib2.0-0 2.20.1-0ubuntu2 The GLib library of C routines
ii libglib2.0-cil 2.12.1-1ubuntu2 CLI binding for the GLib utility library 2.1
ii libglib2.0-data 2.18.2-0ubuntu2 Common files for GLib library
ii libglib2.0-dev 2.20.1-0ubuntu2 Development files for the GLib library
ii libglibmm-2.4-1c2a 2.18.1-1 C++ wrapper for the GLib toolkit (shared lib
Затем я ищу любой "glib.h" где угодно в / usr / include. Я получаю два: /usr/include/glib-1.2/glib.h и /usr/include/glib-2.0/glib.h. Поэтому я стараюсь:
$ gcc -I/usr/include/glib-2.0 -Wall test.c
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
from /usr/include/glib-2.0/glib.h:32,
from test.c:2:
/usr/include/glib-2.0/glib/gtypes.h:34:24: error: glibconfig.h: No such file or directory
(вырезано еще около 10 000 ошибок)
Кажется, на моем компьютере нет glibconfig.h
.
Что мне теперь делать?
glib.h
наstdio.h
тоже не работает. Предполагая, что у вас есть основная функция, правильный ответ - использоватьpkg-config
, как указано в другом ответе. - person Yasushi Shoji   schedule 13.08.2012gcc -c test.c
должен работать нормально, если test.c содержит только#include <stdio.h>
. Не помешало бы добавить вторую строкуvoid test(void) { }
, но в этом нет необходимости. В случае OP сообщение об ошибке появится независимо от того, что следует за#include <glib.h>
. - person Keith Thompson   schedule 29.06.2013