Установка среды разработки GTK с помощью aptitude
Я пытаюсь установить среду разработки 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/ на путь и скомпилировать снова. Теперь он жалуется, что не может найти другой файл /gio/gio.h,
Этот файл даже не существовал в моей системе, поэтому после поиска gio.h и получения других библиотек мне удалось его установить. Я попытался снова скомпилировать, на этот раз компилятор не может найти /usr/include/glib-2.0/glib/gtypes.h,
На данный момент, я думаю, не может быть так сложно просто установить что-то вроде среды разработки GTK, которая является довольно популярным пакетом. Я подумал, что, возможно, что-то не так с моей системой, поэтому я попробовал это на другой установке Ubuntu и столкнулся с теми же проблемами.
Итак, какие именно пакеты необходимы для установки GTK? И нужно ли мне вручную настраивать мой путь включения или это должно произойти автоматически?
1 ответ
Существует две версии 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
/usr/include/gtk-3.0/gtk/gtk.h libgtk-3-dev
устанавливать 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`
Если вы все еще сталкиваетесь с проблемами, покажите / приложите команду, которую вы используете, и вывод, приведенный выше для вашего вопроса.