Компания Qt Company опубликовала релиз фреймворка Qt 6.9, в котором продолжена работа по стабилизации и наращиванию функциональности ветки Qt 6. В Qt 6.9 предоставлена поддержка платформ Windows 10+, macOS 12+, Linux (Ubuntu 22.04/24.04, openSUSE 15.5, SUSE 15 SP5, RHEL 8.10/9.4, Debian 11.6), iOS 16+, Android 9+(API 23+), webOS, WebAssembly, INTEGRITY, VxWorks, FreeRTOS и QNX. Исходные тексты компонентов Qt поставляются под лицензиями LGPLv3 и GPLv2. Qt 6.9 получил статус промежуточного выпуска, общедоступная поддержка которого будет осуществляться 6 месяцев (+ ещё 6 месяцев для коммерческих пользователей)...Подробнее: https://www.opennet.me/opennews/art.shtml?num=63009
> В модуль Qt SVG добавлена начальная поддержка CSS-анимации, которая пока применима только для свойств "color", "fill", "stroke" и "transform".А JavaScript анимации оно поддерживает?
В QML есть JavaScript
вы часом не Грегор с Амальтеи?
Ну допустим. И чего?
Интересно, какой комбайн победит? Qt, SystemD или Linux Kernel?
Кто победит в шахматах?
Боксер,лыжник или спринтер?
Мы уже все решили: твой боксер ляжет во 2-ом раунде с нашим лыжником.
Шо, вот прямо так с ним и ляжет у всех на глазах?
В европах это называется "хобби"
> Боксер,лыжник или спринтер?Лучшего описания комбайнов я ещё не встречал :) Именно так и обстоит дело... при "игре в шахматы".
Как ходит боксер, лыжник, спринтер?
Информация из Википедии: Шахбокс (англ. Chess Boxing) — гибридный вид спорта, комбинация шахмат и бокса в чередующихся раундах.
> Интересно, какой комбайн победит?Только вот Qt не комбайн, а набор отдельных библиотек.
Причем в пределах одной библиотеки можно даже ненужные фичи при сборке отключать: например, отключить неиспользуемые виджеты в QtWidgets, и получить DLL/SO в 2-3 мегабайта.
> ненужные фичи при сборке отключатьТы не поверишь... что можно сделать при сборке ядра.
>> ненужные фичи при сборке отключать
> Ты не поверишь... что можно сделать при сборке ядра.Он про сборку приложения говорит, а не самого qt. Понимать надо!
> Понимать надо!Даже больше добавлю: есть линух-ядра в виде приложения; есть даже статическая линковка ядра к приложению, получая приложение-само-себе-система-загрузочная, актуально во многих сферах.
Где можно почитать про это?
Ты не поверишь... что можно найти в интернете.
на арчвики.
UKI назвается.
Не правильный подход надо так что в автомобиле победит мост или подвеска
Бортовая магнитола от Ашота
> Добавлен API для создания интерфейсов, в которых элементы интерфейса смешиваются с содержимым и не отвлекают пользователяПомню в яндекс браузере так делали, чтобы контент сайтов отображался. Правда сайтам вроде надо было это поддерживать отдельно.
Все эти новые версии Qt доступны в России?
Через официальный установщик нет, через пакеты - да.
Всегда были.
Нет. Но как-бы можно установить из репозиториев. Поясню, почему "как-бы". В репах Ubuntu некоторые пакеты последней версии 6.8 битые, то бишь с неисправленными ошибками. Вы не получите полнофункциональный пакет, причем некоторые вещи даже "ручками" не подправить - именно битые пакеты. При этом! Порты Qt6 в той же GhostBSD работают так, как надо, без всяких замечаний. По информации (сам не пользуюсь - у меня только Ubuntu и GhostBSD), в Arch Linux ошибки также исправлены. Видимо, уровень поддержки разный - у одних колхозники-любители, у других крутые профессионалы.
> Нет. Но как-бы можно установить из репозиториев. Поясню, почему "как-бы". В репах
> Ubuntu некоторые пакеты последней версии 6.8 битые, то бишь с неисправленными
> ошибками. Вы не получите полнофункциональный пакет, причем некоторые вещи даже "ручками"
> не подправить - именно битые пакеты. При этом! Порты Qt6 в
> той же GhostBSD работают так, как надо, без всяких замечаний. По
> информации (сам не пользуюсь - у меня только Ubuntu и GhostBSD),
> в Arch Linux ошибки также исправлены. Видимо, уровень поддержки разный -
> у одних колхозники-любители, у других крутые профессионалы.А всё на самом деле просто. В Ubuntu, в той что поддерживает Canonical, нет никаких официальных поддержек KDE от самой Canonical! ;)
И да, по доброте душевной канониклы предоставляют свою инфраструктуру для сирых и убогих, чтобы те распространяли свои поделия.Вспоминаем пляски вокруг индусского чудо-мальчика, который, милота-то какая, сделяль сборку с Unity в свои 13 лет, а потом даже запилил целый дистр со сборной солянкой из нескольких других дистров с помощью дистробокса из коробки, и теперь эти все свои проекты благополучно поддерживает в актуальном, готовым для прода виде [нет].
А в Universe репе и прочих, пакеты такого качества, какого качества кривизна рук спецов, которые их собирали. ¯\_(ツ)_/¯Это всё равно что предьявлять к качеству пакетов в AUR, оно там такое же рандомное.
> А всё на самом деле просто. В Ubuntuвсе, что касается Qt - цельнотянутое из Debian. И в Debian такие же проблемы. Но, честно говоря, товарищ выше придирается. Ведь работает же Qt6. Ну пару настроек сделать для профессионала не проблема, а остальное и не нужно.
>> А всё на самом деле просто. В Ubuntu
> все, что касается Qt - цельнотянутое из Debian. И в Debian такие
> же проблемы. Но, честно говоря, товарищ выше придирается. Ведь работает же
> Qt6. Ну пару настроек сделать для профессионала не проблема, а остальное
> и не нужно.Если есть проблемы которые по сути баги, то долбро пожаловать в бегрепорты, не видел такого чтобы разработчики игнорировали баги, чисто потому что дистрибутив Debian или Ubuntu.
Хотя нет, вру, встречал я одного такого разработчика, но он по полиси Дебиана не прошёл, но это уже другая история. xD
Ну не так всё. Зачем багрепортить, если ошибка общеизвестная и годами обсуждается на специализированных форумах - кто-то уже явно сообщил. Ну вот подкину несколько, характерных только для Linux:
1. При установке Qt6 не показаны примеры. При этом примеры Qt5, добавленного к Creator на Qt6, показаны.
2. При добавлении Qt5 к Creator на Qt6 не добавляется автоматически его профиль. Смешно, что бывает наоборот - профиль Qt5 есть, а Qt6 нет. Добавляется легко, но "вручную".
3. Набившая оскомину проблема при закрытии окна, например: qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 1549, resource id: 16779799, major code: 40 (TranslateCoords), minor code: 0. Ни к чему плохому не ведет, но просто некрасиво.
Всё это известно годами, но результат - ноль.
>[оверквотинг удален]
> 1. При установке Qt6 не показаны примеры. При этом примеры Qt5, добавленного
> к Creator на Qt6, показаны.
> 2. При добавлении Qt5 к Creator на Qt6 не добавляется автоматически его
> профиль. Смешно, что бывает наоборот - профиль Qt5 есть, а Qt6
> нет. Добавляется легко, но "вручную".
> 3. Набившая оскомину проблема при закрытии окна, например: qt.qpa.xcb: QXcbConnection:
> XCB error: 3 (BadWindow), sequence: 1549, resource id: 16779799, major code:
> 40 (TranslateCoords), minor code: 0. Ни к чему плохому не ведет,
> но просто некрасиво.
> Всё это известно годами, но результат - ноль.Судя по опыту в Debian Staable могут исправлений не завести, если посчитают что проблема недостойна внимания, а уж если Debian старше чем Stable, то и говорить не приходится. В этом плане в убунтовых внезапно получше картина.
Не доступны, поскольку продажи прекращены, а открывают под GPL только старые и не всё. Но можно достать, как, впрочем, и исходники Windows. ;)
Я просто вспоминаю, что разрабы российской мобильной ОС Аврора решили взять Qt в качестве UI-фреймворка, вместо того чтобы сделать свой. А этот Qt оказывается "вражеский".
Разрабы "российской" мобильной ОС Аврора вообще-то финики, и ОС, которую они разрабатывали и разрабатывают называется SailFish. А финикийцы и их ГрейтЧухна недалего от норгов, которые разрабатывают Qt. Поэтому логично.А российские разработчики с их инвесторами в основном только переименовывают SailFish в Аврору (буду рад, если я ошибаюсь, но думаю, что нет, не ошибаюсь).
ПС. Есть и другие российские разработчики и фирмы, которые реально разрабатывают, например в Касперском - это к тому, что не надо всех под одну гребенку ровнять.
> не надо всех под одну гребенку ровнятьНу разумеется.
В ИБ у нас почему-то всегда любили вкладываться больше всего. Интересно, с чем бы это могло быть связано?
У Сноудена спроси, он тебе много про это расскажет и про свою работу в АНБ
Потому что рынок (антивирусов) был относительно свободен. Операционные системы как были заняты США, так и остались.
Я понял, что ИБ - это Интернет Безопасность, а не Информационная безопасность, поэтому про Снежка и ответил.Кроме Антивирусов еще были области, где у нас были лидирующие позиции - распознавание образов, электронные словари - это из того, что я помню, еще что-то, что уже забыл.
А вот с ОС - бяда. Пришел еще в том веке на ВАЗ работать - там была такая древняя, но нормальная ос как VAX (на 40 мб могла держать до 50 терминалов, а может и больше - у нас просто их не бело) и руководство по советской операционной системе Демос, которая была в общем-то переводной BSD. Поэтому - это старая и до сих пор нерешенная проблема.
Ещё нормальные алгорфмы Маркова и Тетрис.Лидирование -- опасная штука. США оно надо, поскольку у них на привлечении людей государство построено. Но есть и Мичиганский рыбный тест, где люди из разных стран видят разное https://garbuzenko.livejournal.com
Соответственно, людям нужно не "лучше всех", а "понятнее-удобнее"
Вендовый установщик не работает, но исходники доступны через зеркала. git через code.qt.io тоже работает.
Так и не особо покупали
да. в моем любимом дистрибутиве доступны.
Можно GUI сделать поверх OpenGL?
В смысле, вручную нарисовать? Можно, если времени вагон
Разумеется. В играх так и делают.
Изначально же такая возможность была. Два способа навскидку:
1. клипнуть дочерние окна контролов из родительского.
2. рисовать в буфер, потом его использовать при прорисовке гуя как душе угодно.
можно и на qml, и на виджетах, если речь о чём-то поверх сценысам рендеринг гуи можно на qml
Может подскажешь, на QML нарисовать прямоугольник? А то я как-то пробовал, но простого способа не нашёл.
Да, как вариант взять OpenGL виджет и нарисовать поверх него другой виджет, например в рамках QGraphicsScene.
Приятно видеть как лучший опенсорсный фреймворк развивается и улучшается.
Особенно "Проведена работа по повышению производительности".
Теперь можно всякую бекграунд активность вроде индексации передавать на E ядра.
Что такого принципиально нового они добавляют каждую версию? Что принципиально нового они добавят через 10 лет? Почему это нельзя добавить сразу, получив законченный продукт.
Они практически не добавляют. Они меняют, грубо говоря, объектную модель. Чтобы программистов без работы не оставить, заставляя их существенно переписывать приложения под каждую новую версию.
> Они меняют, грубо говоря, объектную модель.Да что ты? Покажешь пример изменения объектной модели? Даже между Qt 4 и 6?
Хотя нет, не покажешь - я на деньги готов поспорить, что ты понятия не имеешь, что значит "объектная модель". Не ляпай больше терминами, значения которых не понимаешь.
Объектная модель - понятие очень широкое. Десяток функций deprecated - можно сказать, сменили модель. Вызов чего-то откуда-то упростили - сменили модель. Пару новых функций добавили и несколько переименовали - сменили модель. Хотя всуе упоминать нужно не что-то там всеобще-гуманистическое, а давать конкретику, примеры, согласен.
Добавлю. У меня было приложение в Qt 4.7. Без проблем, делал по книжке (не помню название, но можно найти). В Qt 5.12 появились ворнинги. Ладно, работает же. В Qt 5.15 их стало десятки. Но работает. В Qt 6 компилироваться перестало - поперли ошибки. Да и .... с ним. Всё-равно в Qt перестал работать. Так - на "посмотреть".
> Почему это нельзя добавить сразу, получив законченный продукт.Добавить сразу почти 30 лет развития и полировки кодовой базы? А сам-то как думаешь, почему?
Принципиально новым было добавление движка Chromium на замену собственному, но это было давно.
> лучший опенсорсный фреймворкПопулярный - да, лучший - нет. Он раздутый.
Чем ? Что что, но с модульностью ребята поработали на славу и поэтому при желании можно использовать только нужное, нужен интерфейс ? QtWidgets. Нужна сеть ? QtNetwork. И т.д.
Мне надо, чтобы исходники были тоже достаточно просты, чтобы я мог взять их и переделать под свою задачу. По этому критерию есть более хорошие библиотеки.
Можно пример «хороших библиотек»? Я серьёзно, без сарказма.
Кто-то раздут от жЫра.
Вот именно, поэтому и не стоит писать тут свои жЫрные шутки.
> Quick 3D ... прозрачные объектыНа скрине вообще ничего не понятно, где что прозрачно. Майнкрафт какой-то.
Там всё полупрозрачно, просто в одном из случаев полупрозрачное нарисовано неправильно.
Оффтоп конечно, но, о боже, Code::Blocks обновился!
Не надо.
Отличная новость!IMHO, лучшая интегрированная среда разработки для wxWidgets. Пользуюсь каждый день.
Version 25.03
For the release 25.03, we provide a changelog hereby about what has changed since 20.03:
Added active plugin information to the About dialog.
Added support for riscv64 build on Linux.
Added UI for automatic source folders aka project globs.
Allow managing Globs also via pop-up menu in project explorer.
Allow importing/exporting global variable sets.
Allow removal from project of multiple selected files.
Allow splash screen translation.
Make many strings translatable.
Fix detection of opened wxs and double saving query.
Add new wxArtProvider ID to wxSmith’s image picker dialog.
Don’t use deprecated gamin library.
Use wxColourPickerCtrl for colour selection in all settings.
Fixed C::B icon flash in taskbar.
Enhanced HI-DPI support.
Colour editor: Add “Reset all” button.
Make opening a file from the command line (–file) in an already running instance to work correctly.
Correct definition of DEFAULT_CONSOLE_SHELL for Mac.
Rework Drag and Drop: Complete rework of dnd in project tree and editor.
Support DnD of files to virtual folders.
Do not check compiler in skipped targets.
Do not select all files in “Remove files…” by default.
Editor: Allow customising changebar colours.
Editor: Fix popup font size when using Direct2D.
Enable app and debug log in batch build mode.
Find dialog: disable Find button if some input value is incorrect.
Fix change of encoding in already opened files when changing encoding settings.
Fix hangs when returning focus to C::B.
Fix missing target selection choice in compiler’s toolbar.
Fix renaming virtual folders.
Fix sorting of libraries and search paths in Build Options.
Ignore case when sorting plugins in the configuration dialog.
Lexer: add make_unique, make_unique_for_overwrite, make_pair, thread and mutex.
Lexer: Add enums to the list of keywords in the Squirrel lexer.
Lexer: Highlighting of fortran-77 columns in Editor.
Logger: Scroll to the end of log control if a new message is added.
Make DirectWrite the default value for editor technology in MSW.
Modernise/update crash handler dll (exchndl) from v0.9.9 to v0.9.11 (Windows only change).
Move crash report file if C::B folder is not writable.
Printing: Fix endless loop when printing without specifying page size.
Printing: Add support for printing multiple documents as a block.
Printing: Detect incorrect page range (start > end).
Project Menu: Do not show “Notes” and “Set programs' arguments” if no project is opened.
Total rework of global user variables. Added Exoirt/Import capability.
Make sure global variables can be used directly after they are defined.
Fix showing the default colour in Settings -> Environment -> Colours.
Syntax highlighting: fix default colour detection and restoration.
Add display info to the Help -> About -> Information dialog
Add option to display projects in alphabetical order in management panel.
Fixed opening more than one instance of CB (Windows).
Fix renaming of opened files.
Restore project manager tree position after deleting or renaming files.
Ну и самые вкусные обновления по wxSmith:Added EVT_ICONIZE, EVT_ACTIVATE, EVT_MENU_OPEN, EVT_MENU_CLOSE and EVT_MENU_HIGHLIGHT_ALL to wxsFrame.
Fixed generated code for embedded panels that does not resize correctly.
Make disabling I18n in wxSmith really work.
Add flag wxAUI_MGR_LIVE_RESIZE to wxAuiManager.
Add missing wxART_CLOSE to the bitmap editor.
Add missing wxYES for confirm dialogs, to overwrite existing files.
Add setting for using Bind() instead of Connect(), disabled by default.
Add support for stretchable separator.
Add wxDataViewCtrl, wxDataViewListCtrl and wxDataViewTreeCtrl widgets.
Add wxEditableListBox to the standard tab.
Allow change of I18N setting in existing resources.
allow specific and generic object event functions.
Allow use of the Validator property when creating Custom Widget code.
Added two properties to wxsGLCanvas. Update generated code.
Better UI for the Toolbar editor.
Fix code generation for wxsCustomControl when Style is empty.
Fix crash when deleting the last tool.
Fix EOL in generated code.
Fix widget order of Standard, Advanced and Contrib palettes.
Fix tab usage, currently the setting is inverted.
Generate code to destroy the common dialogs.
Make the OK button the default one in wxStdDlalogButtonSizer.
Make wxsCustomWidget create code for the common properties.
Remove duplicated style wxTAB_TRAVERSAL in dialogs and wxsFrame.
Remove duplicated wxSTAY_ON_TOP in wxsFrame.
Fix project corruption when renaming wxSmith-related files.
Replace long with wxWindowID in the generated code.
Support wxWidgets 3.2 font weights.
Electron это то что нужно всем. Qt это то что никому не необходимо.
> ElectronНадо больше бинарников Хромого на накопителе...
> Надо больше бинарников Хромого на накопителе...Зачем? Мне хватает qtwebengine 5.15.16 версии. ;) 6.9 пока не нужна.
QML - и есть Qt-шный NiH аналог электрона. На нём приложения тоже на JS-движке почти полностью, только вместо вебкита - Qt.
> только вместо вебкита - Qt.Особенно внутри qtwebengine :)
Это отдельная вещь чисто для совместимости с HTML, ни на что другое не годится. Кому нужен настоящий браузер, который можно в сеть выпускать, берут Blink или Gecko. Потому что компонент для рендеринга HTML предназначен исключительно для рендеринга справки или кривого костыльного веб-интерфейса, когда его не осилили написать не то что на формах, а даже на промежуточном варианте QML.
Qt чем-то напоминает Unreal Engine от мира фреймворков.
Вот только Unreal лагает как не в себя.
Его просто надо научиться готовить. Пока это умеют мало кто.
Я был приятно удивлён производительностью Abiotic Factor (после пары твиков), к примеру. Так что дело тут только в разрабах, видимо.
Так и есть
Как думаете, qt 7 будет уже в 2026 разрабатываться?
они очень зря не сделали 6.6 lts с шестью патч-релизамиqt4 релизили с 2005 по 2011
qt5 2012 - 2020
qt6 2020 - ...может, и начнут в 2026, но кому какое дело. порт гигантских проектов с qt5 на qt6 прошёл без единого разрыва
Хороший вопрос, учитывая близость Дании и новости о Гренландии.
Они разве из Дании? Они же зёмы Линуса. Или я что-то упустил.
Qt в Норвегии, а Гренландия в Дании. Норвегия и Дания рядом, одно время были унией (союзом).Кстати, пошлины Трампа - они ведь Qt касаются. Задушит и всё.
В Новергии была TrollTech, туеву хучу лет наад. Сейчас Qt Group (ex. Qt Company) базируется в Финляндии.
Действительно, с 2016-го. Не стоит доверять памяти и Яндексу.Что же меняется? Санкции остаются. Избежит последствий войны США с Данией? KDE Neon войдёт в Реестр, а местячковые эпигоны исчезнут?
>Продолжено развитие модуля Qt GraphsGPL = не нужно
Для 2D построения есть https://git.code.sf.net/p/qwt/git (можно склонировать гитом), он под LGPL.
>Модуль использует Qt Quick 3D
100% не нужно.
>Добавлен API для создания интерфейсов, в которых элементы интерфейса смешиваются с содержимым и не отвлекают пользователя (контент охватывает всё пространство окна, без выделения заголовка). Для
Только для видеоигр может годится. Но вот с ними как раз облом у Qt - игростроевцы предпочитают велосипеды писать.
=====
Сразу видны приоритеты компании - своя платформа для приложений. Видимо скоро надо ожидать QtOS (как Firefox OS и Chrome OS, только на QMLе вся). С тем же исходом - в мусор.
> на QMLе всяДак уже было - SFOS, но йок и банкрот, а сейчас пытается догнать Аврору хотя бы по номеру версии.
>GPL = не нужноСударь у вас жар. Копилефт - это скелет Свободного программного обеспечения.
>СвободногоНеобходимое уточнение: свободного по Столлману.
Только Столлман имеет право толковать слово "Свобода".
> Необходимое уточнение: свободного по Столлману.Свободного от халявщиков-дармоедов.
Это вы проприетарщиков что ли имели в виду? Так для них Столлман LGPL предусмотрел.
Тут немного не так. Надо взять. Переделать и код закрыть.LGPL тут никаким боком.
Так что халявщики - это не про LGPL.
Ну это коню понятно. Просто некоторые доверчивые товарищи настолько проникаются идеей бородатого Вождя, что в их высказываниях постоянно сквозит классовой ненавистью и борьбой за всепроникающую "свободу". Хотя даже галахический автор сей идеологии был далёк от подобного фанатизма, поэтому и предусмотрел LGPL.GPL - это про защиту базовых средств производства пролетариата, а не про тотальную "щвабодку".
Скелетизованные останки.
Что GPL, что LGPL все одно, вирусные лицензии.
и слава богу
Вообще то богам
я имел ввиду Патрика
> Для 2D построения есть https://git.code.sf.net/p/qwt/git (можно склонировать гитом), он под LGPL.ты это дерьмо хоть раз использовал? остальной бред лень комментировать
Да, использовал. Отлично работает. Жалоб от клиента на построение графиков, на производительность их обновления в реалтайме, и на их качество отрисовки не поступало. Поступали жалобы на интерфейс конфигуратора, в результате чего он был существенно улучшен.
Вы заметили сколько пакет qt-6.9.0 весит?tar.xz - 1ГБ, zip - 1.6ГБ!
Qt писан на C++, интересно сколько дней он будет из исходников компилироваться?
пару часов на нетбуке. но я без веб-фигни собираю
Самый тяжёлый для сборки модуль qtwebengine: 7.5 часов на i7-4790 CPU @ 3.60GHz, 16 Гбайт.
Осталное - мелочи.
Слава флатпаку, можно хромоподелия загнать в него
Так там внутри Chromium.
объясните тем кто не трогал QT своими рукамиwxWidgets vs QML
почему, зачем, что дальше?
>wxWidgets vs QMLwxWidgets and Qt - wxQt
Аутор поясни.>Исходные тексты компонентов Qt поставляются под лицензиями LGPLv3 и GPLv2.
На сколько я знаю, свежие версии Qt выходят с проприетарной лицензией. На копилефт они переводят только несвежие версии. Не так ли?
Нет, это не так.
Врёшь.
> Врёшь.Смысл пересобирания велосипеда, в велосипеде.
Браво маэстро! Это так глубокомысленно.
>На копилефт они переводят только несвежие версии. Не так ли?Только LTS-версии выходят с задержкой на один год.
LTS-версия это как раз то, что пригодно для создания продукта. Остальное раньше называлось "бета-версия".
для т.н. "продуктов" обычно покупают лицензию. для нормального софта используют то, что есть в репозиториях
> для нормального софта используют то, что
> есть в репозиторияхДа, знаю, один программист на Пихоне мне рассказывал, что ему такое подходит. Но самого "нормального софта" я что-то не видел.
В репозитории Ubuntu только 6.4.
Мелкие и бесполезные изменения. Если пофиксили какие-то критичные для вас баги только тогда есть смысл переходить, но это надо в подробном чейнджлоге/гитлоге смотреть.