Я пытаюсь установить среду разработки GTK в Ubuntu, и мне трудно просто установить ее.
По сути, моя цель состоит в том, чтобы просто скомпилировать файл C, который включает в себя заголовочный файл <gtk/gtk.h>
, так что я могу начать возиться:
#include <gtk/gtk.h>
int main() { }
Итак, этот ответ говорит Вы можете просто установить apt-get install gnome-core-devel build-essential
, чтобы установить среду разработки. Итак, я попробовал это, и когда я пытаюсь скомпилировать приведенный выше код, я получаю, компилятор жалуется, что не может найти файл gtk/gtk.h
Итак, я добавляю /usr/include/gtk-2.0/
в Path и компилирую снова. Теперь он жалуется, что не может найти другой файл /gio/gio.h
.
Этот файл даже не существовал в моей системе, поэтому после поиска в gio.h и получения других библиотек мне удалось его установить. Я попытался снова скомпилировать, на этот раз компилятор не может найти /usr/include/glib-2.0/glib/gtypes.h
.
На данный момент, я думаю, не может быть так сложно просто установить что-то вроде среды разработки GTK, которая является довольно популярным пакетом. Я подумал, что, возможно, что-то не так с моей системой, поэтому я попробовал это на другой установке Ubuntu и столкнулся с теми же проблемами.
Итак, какие именно пакеты необходимы для установки GTK? И нужно ли мне вручную настраивать мой путь включения или это должно произойти автоматически?
Существует две версии GTK +, GTK + 2 и GTK + 3. Вы должны выбрать или, по крайней мере, предпочесть gtk + 3, так как переход начался некоторое время назад.
Вот несколько примеров для gtk3: http://developer.gnome.org/gtk3/3.2/gtk-getting-started.html
#include <gtk/gtk.h>
int
main (int argc,
char *argv[])
{
GtkWidget *window;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);
gtk_widget_show (window);
gtk_main ();
return 0;
}
Чтобы найти какие Пакет предоставляет файл, перейдите на http://packages.ubuntu.com и прокрутите вниз до «Поиск содержимого пакетов». Введите имя файла в качестве ключевого слова и найдите файл.
gtk.h предоставляется двумя пакетами:
/usr/include/gtk-2.0/gtk/gtk.h libgtk2.0-dev
[ 1112] /usr/include/gtk-3.0/gtk/gtk.h libgtk-3-devblockquote>
Установите
libgtk-3-dev
для gtk + 3.Наконец, обратите внимание на команду, которую вы выполняете (см. Примеры по ссылке, которую я упомянул выше):
gcc `pkg-config --cflags gtk+-3.0` -o window-default window-default.c `pkg-config --libs gtk+-3.0`
Сохраняйте порядок аргументов одинаковым . Возможно, вы захотите добавить -Wall , чтобы показать все ошибки, которые необходимо исправить:
gcc `pkg-config --cflags gtk+-3.0` -o window-default window-default.c -Wall `pkg-config --libs gtk+-3.0`
Если вы все еще сталкиваетесь с проблемами, покажите / прикрепите используемую команду и вывод на ваш вопрос выше.