Лучше всего взглянуть на https://en.wikipedia.org/wiki/List_of_widget_toolkits#High-level_widget_toolkits
Если вы хотите придерживаться C, а не C ++, то Qt отсутствует.
Другой, который выделяется - EFL . Я никогда не использовал его сам, но у него хорошая репутация и, вероятно, ваш лучший выбор, если вы хотите выйти из GTK + и придерживаться C. Однако я не знаю, насколько легко использовать его в Windows.
Теперь о GTK +:
Кроме того, я читал на форумах, даже если я делаю вещи с пакманами, этого все равно недостаточно для C :: B.
Здесь есть люди, которые используют GTK + с Code :: Blocks, поэтому я не понимаю, о какой проблеме вы говорите.
Тогда другие ваши проблемы:
Документация использует много слов, не говоря много
Примеры
Загрузки хотят, чтобы вы загрузили материал ДРУГОЙ, затем gtk, чтобы получить gtk
Чего вы не получите, так это того, что GTK + - это больше, чем просто библиотека libgtk. Он зависит от многих других библиотек, таких как glib, cairo, pango и т. Д. В прошлом был пакет или установщик, который устанавливал их в Windows, но люди не могли настроить среду на основе своих нужно и сдаваться. Поскольку рабочая сила GTK + для платформы Windows ограничена, команда GTK + делегировала распределение двоичных файлов GTK + проекту MSYS2.
MSYS2 - это популярный проект, который предоставляет множество программного обеспечения с открытым исходным кодом, уже созданного для Windows, и решает проблему построения и установки зависимостей вручную для пользователя. Этот шаг сделан, чтобы сделать установку проще, а не сложнее. В нескольких командах у вас есть GTK + и все его зависимости, установленные для вашей платформы, и вы можете начать кодировать ваше приложение. Другая команда, и у вас установлены python и привязки python GTK +, и вы можете начать работу. Хотите зависеть от другой популярной библиотеки? Скорее всего, MSYS уже предоставляет его.
Известно, что Windows десятилетиями плохо справлялась с управлением зависимостями. Если бы управление пакетами не было проблемой в Windows, то такие вещи, как chocolatey или conan , не существовали бы.
Ваше философское нежелание просто философское. Конечно, GTK + в Windows не идеален. С MSYS2 вы получите пакеты, собранные с помощью gcc, поэтому символы отладки несовместимы с отладчиком Visual Studio, и вам придется использовать вместо них gdb. Но по другому вопросу вы говорите, что используете gcc и ненавидите Visual Studio, так что это не должно быть для вас блокирующим.
GTK требует, чтобы куча DLL была отправлена вместе с exe-файлом. Было бы идеально, если бы вся цель могла быть включена в один exe-файл без необходимости полагаться на внешние библиотеки dll или .net, а также на другие внешние элементы.
На данный момент это невозможно, так как статическая компиляция GTK + не поддерживается. Однако перераспределение приложения не так просто, как хотелось бы. Лучший способ перераспределить ваше приложение в Windows при использовании MSYS2 - это создать пакет pacman для вашего приложения, перечислив его зависимости, а затем вызвать pacman, чтобы установить ваше приложение в пустой каталог, и попросить его также установить все ваши зависимости. Результатом будет каталог, который вы можете распространять, с автономной установкой вашего приложения и всех его зависимостей, включая GTK +.