LINUX.ORG.RU

Похоже на велосипед. Qt mainline и так всё делает правильно: запиливают поддержку с++11 , у них уже были планы по избавлению от moc (только как запилят с++11).

ЗЫ Они используюи GNU Autotools для сборик? В 2015году?!

CrazyAlex25 ★★★
()
Ответ на: комментарий от CrazyAlex25

ЗЫ Они используюи GNU Autotools для сборик? В 2015году?!

Да, тоже заметил.

UVV ★★★★★
() автор топика

На opennet'e сегодня прочитал, удивился.

Два человека (один из которых женщина, пишущая под Windows) решили потянуть на себе кодовую базу Qt, причём в версии Qt 4.8.2 от Nokia. При этом они раньше писали простенькие Qt-программки типа блокнотов.

Ну что же, флаг им в руки. Я не думаю, что у них что-либо получится. 2GIS тоже как-то решили тянуть форк Qt, в итоге решили коммитить в оригинальную ветку. Весьма трудное это дело, угнаться даже за такой маленькой компанией, как The Qt Company, тем более они сейчас перешли в фазу активной разработки: шлёпают новые версии почти каждый месяц.

EXL ★★★★★
()
Ответ на: комментарий от CrazyAlex25

только как запилят с++11

Не раньше c++14 в меинстриме.

Stil ★★★★★
()
Ответ на: комментарий от CrazyAlex25

ЗЫ Они используюи GNU Autotools для сборик? В 2015году?!

Ага, тоже насторожило. Ну учитывая, что один из разработчиков:

I am a devout Debian user for personal systems. I have extensive experience with the Autotools build system.

Становится всё понятно.

EXL ★★★★★
()

Жуткие вещи творят. Кроме перехода на c++11 правильных решений у них нет, но и то с c++11 у них вряд ли что выйдет — всё, что не требует нарушения API/ABI, прекрасно делается автоматом утилитой clang-modernize и ручной правки не требует.

quiet_readonly ★★★★
()
Последнее исправление: quiet_readonly (всего исправлений: 1)
Ответ на: комментарий от EXL

При этом они раньше писали простенькие Qt-программки типа блокнотов.

Ну я б не назвал это совсем блокнотами.

UVV ★★★★★
() автор топика
Ответ на: комментарий от Twissel

Только что запостил новость о сабже :-D

Так они это только сделали что ли? Я форум посмотрел - 0 сообщений )) Мне тоже коллега вчера скинул ссылку по жабберу, но когда сие творение вышло, я не смотрел

UVV ★★★★★
() автор топика
Ответ на: комментарий от backburner

Непонятно, как без moc будут работать вызовы вроде QMetaObject::invokeMethod

Вот кстати тоже непонятно. С одной стороны они говорят про Removing moc improves run time performance, с другой они перешли на autotools.

UVV ★★★★★
() автор топика
Ответ на: комментарий от EXL

2GIS тоже как-то решили тянуть форк Qt, в итоге решили коммитить в оригинальную ветку

у них всего один коммит там, это даже не смешно

шлёпают новые версии почти каждый месяц

5.3.0 - 10.05.2014
5.4.0 - 10.12.2014
5.5.0 - 23.06.2015

разупорин примите

dt1 ★★
()
Ответ на: комментарий от UVV

Интересно как это moc влияет на рантайм? Он же только при компиляции вызывается и делает таблицу сигнал-вызов ф-ции.

CrazyAlex25 ★★★
()
Ответ на: комментарий от CrazyAlex25

ABI они сломали в 5.4.0, если мне не изменяет память. Потом его опять вернули в 5.4.1; 5.4.0 вообще не совместим с прошлыми/будущими Qt 5 библиотеками.

EXL ★★★★★
()
Ответ на: комментарий от CrazyAlex25

Во-во, мне тоже интересно, как это вообще получилось, что

Removing moc improves run time performance

Может они имели ввиду compile time?

EXL ★★★★★
()
Ответ на: комментарий от EXL

В 2gis вообще с пиаром все хорошо. Например, обещал один товарищ в декабре прошлого года unilog заопенсорсить. И где? Ждём-с...

fluorite ★★★★★
()
Ответ на: комментарий от EXL

Ну поди «выложенный код не соответствует высоким стандартам кодирования, принятым в нашей организации, бла-бла-бла, в настоящий момент мы не располагаем ресурсами для поддержки непрофильного бла-бла-бла наш продукт бла-бла-бла, коммерческая тайна, бла-бла-бла спасибо за понимание». Да ладно, анонимус не забывает :)

fluorite ★★★★★
()
Ответ на: комментарий от EXL

Moc связывает строковые представления сигналов-слотов, генерирует по ним metacall-функции. Вот видимо они и работают медленнее С++11 биндов. По заявлениям самих Qt сигналы-слоты в таком виде «немного» медленнее обычных С или С++ коллбеков (которые void(*foo)() или void(className::*foo)()).

Вон кто-то даже бенчмарк написал (сравнивая правда сигналы-слоты с прямым вызовом). http://stackoverflow.com/questions/10838013/does-large-use-of-signals-and-slo...

staseg ★★★★★
()
Ответ на: комментарий от EXL

Да ты что! А они звездят видимо:

а где там сказано, что это исправления в оригинальной ветке?
вот вся их деятельность в мейнстриме:
https://codereview.qt-project.org/#/q/s.galin%402gis.ru,n,z

А Patch-Version в вашей Вселенной уже не считается?

они к активной разработке отношения не имеют

dt1 ★★
()

Если оно будет развиваться, и с ним будут кутешные проги собираться, то очень даже нужно. Потому как 4.8.7 вроде как последний.

ieeya
()
Ответ на: комментарий от CrossFire

это все замечательно, но в мейнстрим то они не коммитят

dt1 ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.