Хочется напилить на крестах научную тулзу с гуём и положить на гитхаб.
Раньше много пейсал на C++/Qt5. Но осталось впечатление, что тепловозом на такси бомблю. Всё классно, но: оно жирное, содержит все свистоперди мира, код не «чистый» (слоты-сигналы-moc), проприетарщицкие угрозы.
Хочется что-то более классическое, менее подверженное играм корпораций, менее жирное, не содержащее в комплекте то, чего не просили (мне от гуи фреймворка не нужен звук, сеть и CSS/HTML5 рендерер), с более кондовым и тупым подходом к разработке (ничего кроме чистого C++, пусть и древноватого). То есть я предпочёл бы явно заинклудить libpng, libjpeg и поепацца с загрузкой файлов/ресурсов сам как удобно мне.
Хотелось бы, чтобы юзер гитхаба усрал свой диск минимальным числом байт, apt install-ируя зависимости к моему проекту.
Ну и мне не нравится богомерзкий CMake, мне проще нафигарить простейший makefile - под мастдай и яблоко собираться не планирую.
Наверное это GTK3? Или что?
Что нужно от либы: рисовать основное окно, кнопки, поля ввода, крутилки, скроллбары, буферы пикселей (возможность запила бесконечной прокрутки длинной зарендеренной осциллограммы), радиокнопки, чекбоксы - ну основные компоненты, короче. Буду много работать с 2D-сонограммами, спектрограммами: короче пиксели рисовать и двигать блоки пикселей.
Спасибо.
UPDATE
Почитал срачь фкамментах. FLTK - вещь! Спасибо за наводку. Воистину C++ крестовая нативная минималистичная хрень без двух камазов доп-говна как в Qt.
FLTK-1.4 - https://github.com/fltk/fltk - взял с гитхаба, собрал, поигрался. Собралось CMake-ом на убунте в два прихлопа без ёпли и грёбли. Свой пример собрать не смог, обосрался с набором либ:
g++ -std=c++11 test.cpp -lfltk -lcairo -lX11 -lwayland-client -lpango-1.0 -lglib-2.0 -lgio-2.0 -lgthread-2.0
/usr/bin/ld: /usr/local/lib/libfltk.a(Fl_Cairo_Graphics_Driver.cxx.o): undefined reference to symbol 'g_object_unref'
/usr/bin/ld: /lib/x86_64-linux-gnu/libgobject-2.0.so.0: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Но я не унываю - примеры в папочке «примеры» выглядят нормально. Я собираю как тупая тварь и лошара, а надо наверное через какой-то fltk-config или как там его, но это я потом пойму.