Заставить приложение gtk/Glade работать на нескольких версиях Ubuntu

Я занимаюсь разработкой приложения на C, используя GTK+ 3.0 и Glade, которое должно работать на Ubuntu версии 14.04 и выше. Я занимаюсь разработкой 16.04, и здесь все работает нормально, но когда я перевожу скомпилированное приложение на более старые версии Ubuntu, я получаю следующие ошибки:

(gtkmain:22355): Gtk-CRITICAL **: IA__gtk_builder_get_object: assertion 'GTK_IS_BUILDER (builder)' failed

Интерфейс никогда не появляется, и приложение непригодно для использования.

Более того, даже несмотря на то, что я могу успешно скомпилировать приложение в версиях Ubuntu до 16.04 (после установки необходимых библиотек), они все равно не могут корректно работать на компьютере, на котором они были выполнены.

Я компилирую с помощью следующей команды:

gcc `pkg-config --cflags gtk+-3.0` -g -o gtkmain gtkmain.c `pkg-config --libs gtk+-3.0` -lncurses -lpthread -rdynamic

Когда я компилирую 14.04, результаты будут такими же, как если бы файл glade даже не был там. Я могу удалить файл glade, который использует строитель, и приложение выдает те же ошибки при запуске. Так что я думаю, что корень проблемы должен быть как-то связан с Глейдом.

Мне просто нужен файл приложения, который я могу запустить автономно на Ubuntu 14.04 и выше без перекомпиляции или специальной настройки системы. Что я могу изменить, чтобы сделать этот портативный между версиями?

0 ответов

Другие вопросы по тегам