История изменений
Исправление
RazrFalcon,
(текущая версия)
:
Ведь в Qt 4, GTK+3 и GTK+2 окно создаётся без всякой OpenGL'овской мишуры.
Ок. Хорошо. Qt5 использует GL. В чём проблема? На что это влияет? На одну строку в ldd?
Простая проверка показывает, что этот самый GL дёргается только из QXcbWindow::create(). Всё. Это настолько страшно? Какие реальный проблемы это вызывает?
Я про libQt5XcbQpa.so.5 и его зависимость libQt5DBus.so.5 как раз от этого самого плагина platforms/libqxcb.so
ЛЮБОЕ приложение на Qt 5 под Linux.
Fixed
И? Ну использует приложение DBus. GTK+ тоже использует. Как минимум для трея и глобального меню нужен dbus, без него никак. Вот и зависимости.
% du -h /usr/lib/libQt5XcbQpa.so.5.6.1
972K /usr/lib/libQt5XcbQpa.so.5.6.1
% du -h /usr/lib/libQt5DBus.so.5.6.1
524K /usr/lib/libQt5DBus.so.5.6.1
Полтора метра абстракций, какой ужас.
Заметь, зависимости от ICU там тоже нет и при этом локализация нормально работает.
И? Qt тоже можно собрать без icu и он тоже будет прекрасно работать.
А icu всё равно придётся использовать для маломальской работы с текcтом:
% ldd /usr/bin/inkscape | grep icu
libicuuc.so.57 => /usr/lib64/libicuuc.so.57 (0x00007f4e273f6000)
libicudata.so.57 => /usr/lib64/libicudata.so.57 (0x00007f4e24cd3000)
То что Qt 5 прога стартует дольше из-за большего количества зависимостей:
Вы это вычислили по количеству либ? Замечательно. А я вот запустил valgrind, и посмотрел, что в проге с пустым QMainWindow _dl_runtime_resolve занимает 2.75% времени/инструкций. Сомневаюсь, что это катастрофически влияет за время запуска.
Исходная версия
RazrFalcon,
:
Ведь в Qt 4, GTK+3 и GTK+2 окно создаётся без всякой OpenGL'овской мишуры.
Ок. Хорошо. Qt5 использует GL. В чём проблема? На что это влияет? На одну строку в ldd?
Простая проверка показывает, что этот самый GL дёргается только из QXcbWindow::create(). Всё. Это настолько страшно? Какие реальный проблемы это вызывает?
Я про libQt5XcbQpa.so.5 и его зависимость libQt5DBus.so.5 как раз от этого самого плагина platforms/libqxcb.so
ЛЮБОЕ приложение на Qt 5 под Linux.
Fixed
И? Ну использует приложение DBus. GTK+ тоже использует. Как минимум для трея и глобального меню нужен dbus, без него никак. Вот и зависимости.
% du -h /usr/lib/libQt5XcbQpa.so.5.6.1
972K /usr/lib/libQt5XcbQpa.so.5.6.1
% du -h /usr/lib/libQt5DBus.so.5.6.1
524K /usr/lib/libQt5DBus.so.5.6.1
Полтора метра абстракций, какой ужас.
Заметь, зависимости от ICU там тоже нет и при этом локализация нормально работает.
И? Qt тоже можно собрать без icu и он тоже будет прекрасно работать.
А icu всё равно придётся использовать для мало мальской работы с тектом:
% ldd /usr/bin/inkscape | grep icu
libicuuc.so.57 => /usr/lib64/libicuuc.so.57 (0x00007f4e273f6000)
libicudata.so.57 => /usr/lib64/libicudata.so.57 (0x00007f4e24cd3000)
То что Qt 5 прога стартует дольше из-за большего количества зависимостей:
Вы это вычислили по количеству либ? Замечательно. А я вот запустил valgrind, и посмотрел, что в проге с пустым QMainWindow _dl_runtime_resolve занимает 2.75% времени/инструкций. Сомневаюсь, что это катастрофически влияет за время запуска.