All streams
Search
Write a publication
Pull to refresh

Comments 103

UFO landed and left these words here
Ещё бы официальный runtime под Windows, чтобы в sxs ставился…
Не взлетит, спасибо отсутствию в винде стандартного ABI для С++.
При чем тут винда к стандартному ABI для С++? Производители компиляторов не договорились просто, вот и всё. К тому же SxS на то и SxS, что можно поставить и дллки собранные VS и дллки собранные MinGW, кому что надо тот то и заиспользует.
Есть же сборки для разных компиляторов. Осталось сделать отдельный пакет с dll-ками и положить в нужное место.
И как же научить виндовый линкер грузить для этого бинарника студийные дллки а для этого мингвошные. Названия у них же одинаковые.
Такое на макоси может взлететь, но там так не принято просто ставить проги.
И как же научить виндовый линкер грузить для этого бинарника студийные дллки а для этого мингвошные. Названия у них же одинаковые.
Манифестами?
Так для того и SxS, чтобы бинарники находили правильные DLLки. По-моему, основная проблема в том, что Qt прописывает пути в QtCore.dll, а Windows не разрешает менять установленные dll-ки, но до установки точные пути неизвестны. Скорее всего, можно как-то разорвать этот порочный круг — у меня не было времени с этим разбираться.
Большого резона нет, поскольку под каждый патч сишного рунтайма придется выпускать новую версию.
Если линковаться динамически, то не придется.
В таком случае экзешник будет загружать один рунтайм, а библиотеки второй. В перспективе это может плохо кончиться.
А как это решается сейчас (для MSVC 2008)?
Все кладется в одну папку, линкуется динамически. Таким образом .exe и .dll учавствующие в процессе имеют одну и ту же копию CRT, загруженную из .dll.
А в манифесте разве нельзя написать, какие CRT и DLL-ки использовать?
IMHO это и будет правильно.
Однако, при установке Qt прописывает пути в QtCore.dll, а Windows, насколько я помню, не позволяет менять модули в SxS. Как бы это обойти…
Можно рядом с .dll положить внение манифесты. Можно пересобрать со своими манифестами. Можно в инсталлятор положить merge module crt — много вариантов. Я вот для advanced ip scanner просто добавил в инсталлятор merge module нужного рантайма. Работает как часы.
Имеется в виду рантайм от студии? Я тоже так делаю, но это не есть «right thing».
Имеется в виду visual studio redistributable merge module, лежит в common files, интегрируется в MSI — самый что ни на есть right thing.
Right thing это если Qt устанавливается так же.
Я сильнее жду, когда же наконец в Windows прикрутят поддержку установки софта через репозитории с помощью менеджеров пакетов и этот способ распространения ПО станет превалирующим.

Тогда и многомегабайтные DLL перестанут пользователей пугать.
Этот способ хорошо подходит для свободного софта, а для проприетарного не понятно, как деньги брать. Даже для Harmattan в Nokia Store костыли какие-то сделаны.
Спросите об этом у Apple. App Store прекрасно работает.
Там есть возможность организовать такую конструкцию из пакетов:
1.Бесплатное приложение 1, требует пакет 2;
2.Динамическая библиотека для бесплатного приложения 1;
3.Платный плагин к приложению 1, требует пакеты 1 и 2;

4.Платное приложение 2, требует пакеты 2 и 5;
5.Платная динамическая библиотека для приложения 2, требует пакет 2;

6.Бесплатное приложение 3, требует пакет 5?
Приложения для OS X, как правило, имеют в комплекте все необходимые для запуска библиотеки. Не вижу причин, почему это невозможно в данном случае. Хотя, возможно, я неверно понял мысль lightman
Насколько я понимаю, неправильно. Как раз хочется, чтобы необходимые библиотеки были в отдельных пакетах, как в Linux-репозиториях.
Тогда в моём примере пакет 2 нужно будет тянуть и ставить только один раз. Для Symbian и Windows придётся его дублировать для каждого приложения.
В любом случае, бессмысленно обязывать пользователя платить за библиотеку, которую разработчик использовал в своём проекте, это лишь отпугнёт потенциального покупателя. На мой взгляд правильнее включать их в проект, включая плату разработчика за лицензию в конечную стоимость продукта. Разговоры о нехватке места для программ в нынешней ситуации, думаю, можно отложить. А вот дополнительные бесплатные библиотеки вполне можно загружать и использовать для все системы.
Предполагалось, что все пакеты от одного разработчка. Конечно, можно как-то разбросать стоимость библиотеки по использующим её приложениям. Возможно, для покупателя это даже будет понятнее, однако хочется иметь и альтернативный вариант. Это может быть полезно и для пользователя, и для разработчика.
Разговоры о нехватке места для программ в нынешней ситуации, думаю, можно отложить.
Согласитесь, что тупо дублировать модуль всё равно как-то некрасиво. А если его надо тянуть через мобильник, и подавно. А ведь каждое приложение может иметь своё автообновление…
Согласитесь, что тупо дублировать модуль всё равно как-то некрасиво. А если его надо тянуть через мобильник, и подавно. А ведь каждое приложение может иметь своё автообновление…

Право же, не могу согласиться с вашими комментариями. Миллионы пользуются подобной системой (да, я всё о той же Apple) и не задаются подобными вопросами.
Ещё больше миллионов пользуются другой системой и тоже не задаются подобными вопросами. Там тоже приложения содержат все необходимые библиотеки. И в Ovi Store (ныне Nokia Store) так же.

Но с точки зрения системы с нормальными репозиториями, они все дружно маршируют на костылях.
Есть масса сторонних разработок во главе со Стимом.
В вин8 магазин приложений обещают запилить. Возможно, что-то похожее выйдет, хотя, честно говоря, на адекватный результат надежды мало.
UFO landed and left these words here
UFO landed and left these words here
«Я постараюсь до нового года перевести на Qt 4.8 один из наших бесплатных продуктов, Advanced IP Scanner. Если что интересное в процессе вылезет — расскажу.»
Это конечно хорошо, но может быть лучше поучаствовать в www.nmapsi4.org?
Бесплатные продукты для коммерческой компании — это не только обкатка новых технологий, но и реклама. Участие в nmapsi4 в рабочее время я не смогу одобрить. А свободного времени у меня не так много — семья, дети -_-.
Threaded OpenGL рулит. Когда, интересно, под Symbian выйдет теперь…
Ходят слухи, что Qt 4.8 будет последней версией под Symbian :(
O_O
А откуда такие слухи. Я вот вижу, что все уже два года пророчат смерть Symbian, а Nokia продолжает клепать новые прошивки. И последняя (которая Belle), надо заметить, очень даже симпатичная. Или они в блоге писали где-то?
Писали. Вряд ли я смогу найти где именно я об этом читал, но гугл дает довольно много релевантных результатов, например вот.
ну вообще да, под симбу не будет Qt5 — это общеизвестная инфа. Даже на последних девдейс об этом не раз говорилось
А на DevDays ничего не говорилось про Meltemi (или как там ее)?
Нет. Хотя бы той простой причине что никаких доказательств существования нет. Только слухи.
Мне и было интересно, вдруг подтвердятся :)
На ДевДеях такие слухи не могут быть подтверждены. Для этого существует NokiaWorld
Я то понял, что официальной информации там не могло быть, просто у вас много знакомых по DevNet может кто из них что слышал. Ну на нет и суда нет, а жаль
я вас уверяю, даже если кто-то что-то и знает, то до официальных объявлений ни за что об этом не скажет в паблике.
ну ты явно что-то знаешь, что обычным смертным не следует пока знать :)
прикольно в википедии уже есть статья. Вот на эту статью даже ответил Муртазин, правда как всегда скептически
Ну я не сильно за этим делом слежу. Спасибо.
В списке официально поддерживаемых платформ для Qt5 чётко сказано — Symbian будет выкинут
А обещанную в 4.8 динамическую прокрутку хоть сделали? Что-то я её в «What's New» не нашёл. :(
Для виджетов? Ну она валяется отдельным солюшеном и прекрасно работает, но почему-то в основной поставке её нема.
А в Ovi Store приложение с ним выложить можно?
А какие трудности? Мы выкладывали и все хорошо было)
UFO landed and left these words here
Кстати, не понятно почему не в соответствующем блоге.
После введения новой системы, когда пользователи видят на главной только то на что они подписаны, мне как-то стремно переносить в более специализированный блог. Я дмаю, это разумно будет сделать через три дня, когда с анонсом ознакомиться максимальное количество заинтересованных лиц и дальше он будет нужен только для архива и комментариев.
Qt Software читает не сильно меньше людей чем этот
Я знаю, в правом верхнем углу цифры — 11к против 16к
Человеки, как вы расцениваете перспективность Qt?
я думаю, человеку хотелось больше конкретики насчёт перспектив :)
Ок. Конкретика.

Очень положительно. Мы захватим мир.
Разумеется, кто бы сомневался, сейчас еще народ just 4 fun начнёт скупать компьютер Raspberry Pi, если конечно получится. И начнут туда на Qt писать… так?
Подскажите, пожалуйста, данная версия совместима с Silverlight 5?
А то на днях произошел эпичный фейл: обновил 4-ю версию сильверлайта до 5-й, и внезапно плагин перестал работать.
щито, какой сильверлайт?
Телепатия подсказывает, что вы имеете в виду Quick Time, QT. Это не о нем :(.
Речь идет именно о QT. Имеется сильверлайт4-проект, прекрасно работающий в QT-браузере, но при переходе на SL5, внезапно перестающий функционировать. Сопсно, пытаюсь понять, как его забороть…
QT — QuickTime, а в слове Silverlight мягкого знака и намёков на него нет.
Если Вас смущает регистр — ок, уточню вопрос: есть ли в Qt 4.8 поддержка Silverlight 5?
Это вопрос разряда «есть ли у помидора поддержка велосипедной цепи». Вы либо чего-то путаете, либо недоговариваете.
Ок, детализирую: у нас есть унаследованный софт, построенный на базе Qt. В нем крутится сильверлайт4-приложение, которое взаимодействует с софтиной через js-интерфейс.

Так вот, все это дело работало великолепно, пока не вышла 5-я версия сервелата. А после апдейта, работать внезапно перестало.
кьютешный вебки тянет фаерфоксные плагины афаик. Копайте туда
Как показательно для хабра.
Перевод новости собирает 50 плюсов за пол-дня
В то время как статьи об использовании этого фреймворка (участвующие в конкурсе), в большинстве своем колеблются в районе 30.
Вся проблема в доступности новости для широких масс, вот новость о выходе новой версии Qt — популярна, об этом фреймворке наслышаны, название на слуху, под Qt достаточно много программистов.
Статья же типа «как сделать еще одну библиотеку/компоненту/etc с использованием Qt» не несет в себе ничего ценного для подавляющего большинства пользователей и пригодится только узкому кругу людей, что соответствующе влияет на оценку статьи
вот только ценность этих статей несоизмерима абсолютно в другую сторону
А какую ценность представляет новость о релизе новой версии библиотеки людям, эту библиотеку не использующим? Как мне кажется, именно узкий круг заинтересованных и должен отражать в рейтинге узкой статьи ее ценность, и негативно влиять на рейтинг новости, которая и так известна всем заинтересованным лицам, задолго до появления ее перевода на хабре.

То что новость ценится больше в сообществе, говорит о том, что действительно заинтересованных в фреймворке лиц подавляюще мало.
фигня, этот псто еще лучший за 24 часа :D технические статьи не нужны хабру, ему нужны новости и картинки, чо
добавь к своему пост +11, посмотри на статистику последних 5-6 конкурсных постов и поймёшь о чём я :)
Уменя прямо неделя оргазма =) То годную статью по многопоточности на php выкладывают, то любимый фреймворк обновляется существенно. Как Новый год встретишь так и до старости и проживешь, всех с релизом.
А еще недавно Qt Creator 2.4.0 зарелизился.
Вот только С++11 конструкции все равно красным подчеркивает =(

Оффтопик:
Объясните мне глупому, в чем смысл следущего кода (класс QPoint, было в Qt 4.7.3, сейчас убрали)?..
#if defined(Q_OS_MAC)
int yp;
int xp;
#else
int xp;
int yp;
#endif
видимо до 4.7.3 было что-то разное, забыли поправить при переделках
Вопрос в том, как разный порядок полей класса может на что-то влиять?
Может влиять на сериализацию например. А PowerPC были BigEndian, если я не ошибаюсь.
нет не было, вся соль именно в порядке полей в структуре.
Этот код живет там очень давно, пруф:
koders.com/cpp/fidD45B93B99CDAEAD5CFD320321576CC49A7048C11.aspx

Кстати, если погуглить по этому коду то можно найти много дискуссий по поводу смысла.
Но в чем соль, вроде как никто так и не понял.
мб для бинарной совместимости с каким-нибудь NSPoint, чтобы можно было reinterpret_cast'ом между ними гонять?
кстати с QRect:

#if defined(Q_OS_MAC)
    int y1;
    int x1;
    int y2;
    int x2;
#else
    int x1;
    int y1;
    int x2;
    int y2;
#endif
Нормальной поддержки WinCE, полагаю, можно уже не ждать. Печально, но я их понимаю, ось вымирающая.

Также, сильно ждал улучшения в работе QtSql или ORM какой-нибудь, тоже ничего нет, к сожалению.

Разработчики явно целятся в развитие GUI и мобильные приложения, тогда как Qt ИМХО в настоящий момент — лучший кроссплатформенный фреймворк именно для десктопа.
Кто девушку ужинает, тот её и танцует. Вектор развития последние годы задавала Nokia. Я, например, очень рад что Qt теперь официально поддерживает OS QNX.
UFO landed and left these words here
Вы забываете еще ембеды.
Патчи принимаются, Qt 5 находится в разработке и окончательный набор функционала пока не определён. Всё в ваших руках :)
Я не имею столько свободного времени и ресурсов чтобы полностью переписать QtSql, к сожалению. Текущая его реализация годится только для простеньких приложений.
Для десктопа, но не для ынтерпрайз аппликух.
Как сказать, скоро год, как занимаюсь энтерпрайз-апликухой на Qt.
Ну и разве ны встретил кучу проблем и граблей? Сам же не мало тут на эту тему писал.
Что верно то верно, но неразрешимых проблем нет. Все же я считаю мы правильный выбор сделали.

Java и .NET нам по ряду причин не подошли, а больше альтернатив-то и нет.
Так у Qt с самого рождения не было заточки под энтерпрайз приложения для бизнеса. Слабый модуль sql тому пример. Он почти неизменным с 3ьей версии Qt до нас дошел, а то и дольше.
Ничо, мы сделаем из него конфетку, релиз уже не за горами! Не обещаю, что все услышат об этом продукте, но в определенных кругах — однозначно. Полагаю, это будет одно из первых приложений такого рода, написанных на Qt.
Тогда наверное стоило бы либу помогающую энтерпрайз проги писать зарелизить)
хех, да, было бы круто иметь волшебный класс QEnterpriseApplication, решающий все проблемы
Sign up to leave a comment.

Articles