FWIW, я думаю, что это неправильный путь. Если вы не нацелены на очень старые системы, которые поставляют только GTK + 2, GTK + 3 - это путь к go. GTK + 3 был выпущен в 2011 году (9 лет go, как я пишу), и с тех пор GTK + 2 находится в режиме обслуживания. Как только GTK + 4 будет выпущен (где-то в 2020 году, если что-то будет go хорошо), тогда GTK + 2 больше не будет поддерживаться.
Так что правильным вопросом должно быть «GTK + 3 и / или GTK + 4? ".
Используйте GtkBuilder, чтобы большая часть работы по созданию интерфейса была сделана для вас и выверена. В части компиляции вы можете проверить вещи во время компиляции:
#if GTK_VERSION(3, 22, 0)
// code neeeding GTK+ >= 3.22.0
#endif
или просто использовать отдельную ветвь кода, чтобы вы могли сделать GUI специфицированные c вещи, в то же время сохраняя возможность объединения UI-зависимый код.