Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > Официально вышел Qt 4.5 и QtCreator 1.0


Автор: aspirin2003 3.3.2009, 15:48
http://www.qtsoftware.com/about/news/nokia-releases-new-qt-developer-offerings-to-increase-productivity-and-performance

Автор: pan2004 3.3.2009, 16:52
Урра товарищи!

Автор: kemiisto 3.3.2009, 17:24
Побежал качать! smile 

Автор: just_geek 3.3.2009, 17:34
А что-то до фтп достучатся не могу.

Автор: Любитель 3.3.2009, 18:02
Vingrad-эффект? smile 

Автор: SABROG 3.3.2009, 18:23
Цитата(Любитель @ 3.3.2009,  18:02)
Vingrad-эффект? smile

Что-то windows2000 у меня не дружит с QtCreator'ом, крашится где-то внутри библиотек ОС.

Автор: pan2004 3.3.2009, 18:37
Цитата
качаем не тормозим

накаркал... smile 
user posted image

Автор: kemiisto 3.3.2009, 19:41
pan2004, у меня тоже поначалу еле шло, а сейчас "прочихалось". На родине, как никак. smile 

Ну, докрутили 64-bit и Cocoa на Mac OS X. По крайне мере по сравнению с RC1 терь не надо собирать из исходников. Из того, что сразу заметил: главное меню работает не до первого действия, а всё время! smile 

И исчо очень порадовало, что сделали QGtkStyle. Зачод! smile 

Автор: just_geek 3.3.2009, 21:59
Опа, оказывается ActiveQt теперь, тоже в комплект входит smile


И есть довольно интересный exception к лицензии

Цитата

Nokia Qt LGPL Exception version 1.0

As a special exception to the GNU Lesser General Public License
version 2.1, the object code form of a "work that uses the Library"
may incorporate material from a header file that is part of the
Library.  You may distribute such object code under terms of your
choice, provided that the incorporated material (i) does not exceed
more than 5% of the total size of the Library; and (ii) is limited to
numerical parameters, data structure layouts, accessors, macros,
inline functions and templates.


блин и в configure QGtkStyle не отключается...

Автор: anatox91 4.3.2009, 01:13
just_geek, а можно перевод? а то не совсем понял, конкретно этот кусочек:
Цитата

..., the object code form of a "work that uses the Library"
may incorporate material from a header file that is part of the
Library. ...

Автор: SABROG 4.3.2009, 10:07
Цитата(kemiisto @  3.3.2009,  19:41 Найти цитируемый пост)
И исчо очень порадовало, что сделали QGtkStyle. Зачод! smile 

А в виндах его нет.

Автор: just_geek 4.3.2009, 10:49
есть на винде
http://labs.trolltech.com/blogs/2008/10/02/qgtkstyle-now-on-windows-too/

Автор: SABROG 4.3.2009, 12:19
Цитата(just_geek @ 4.3.2009,  10:49)
есть на винде
http://labs.trolltech.com/blogs/2008/10/02/qgtkstyle-now-on-windows-too/

Это очень странно, т.к. в SDK 4.5.0 что я скачал ни в дизайнере, ни в QtCreator'e нет возможности сделать предпросмотр виджета в GTK стиле.

Автор: just_geek 4.3.2009, 12:39
Ну во-первых, в том посте написано что виндовй гткстиль, в отдельном репозитории лежит. Последние правки - октябрь 2008. А вот внесли ли они изменения в основное дерево, не знаю. Еще сорцы не ковырял.
А во-вторых, чтобы поиметь гткстиль, нужно иметь гтк.

Автор: SABROG 4.3.2009, 12:47
Цитата(just_geek @ 4.3.2009,  12:39)
Ну во-первых, в том посте написано что виндовй гткстиль, в отдельном репозитории лежит. Последние правки - октябрь 2008. А вот внесли ли они изменения в основное дерево, не знаю. Еще сорцы не ковырял.
А во-вторых, чтобы поиметь гткстиль, нужно иметь гтк.

Цитата

И исчо очень порадовало, что сделали QGtkStyle. Зачод! smile 


Я думал этот пост относится к релизу 4.5.0. Что они его добавили к остальным стилям. Тогда не интересно, я и так знал о существовании.

Автор: just_geek 4.3.2009, 12:58
Да добавили в 4.5.0, только зависимость от гтк все таки есть... хм, щас глянул сорцы 4.5.0 от 24 февраля, подержки винды так и нет smile Хотя если сильно приспичит, можно патчик накатать ...

Автор: Любитель 4.3.2009, 13:38
Мне кто-нибудь объяснит, зачем под виндой иметь зависимость и от Qt, и от GTK?! Или так нравится какой-то гту-шный стиль? smile Проще портировать тогда..

Автор: just_geek 4.3.2009, 14:00
Смотрим в файлик 4.5.0/src/gui/styles/gtksymbols.cpp

Есть замечательная функция...
Код

static void resolveGtk()
{
    const QString GTK_PATH(QLS("gtk-x11-2.0"));
    QGtk::gtk_init = (Ptr_gtk_init)QLibrary::resolve(GTK_PATH, 0, "gtk_init");
    ...
}


А в 4.5.0/src/gui/styles/gtksymbols_p.h
Код

#include <gtk/gtk.h>


Так что и под линуксом, и под виндой будут зависимости...

Мне вот интересно, поддерживает ли этот стиль гткшные темы? Тогда от такого подхода был бы смысл какой-то.

Вообщем, не совсем понятно зачем тролли так сделали smile

Автор: Любитель 4.3.2009, 14:14
Цитата(just_geek @  4.3.2009,  14:00 Найти цитируемый пост)
Так что и под линуксом, и под виндой будут зависимости...

Мне вот интересно, поддерживает ли этот стиль гткшные темы? Тогда от такого подхода был бы смысл какой-то.

Вообщем, не совсем понятно зачем тролли так сделали

Ну, блин это очевидно до безобразия. Просто под линуксом понятен смысл. Мы пользуемся гномом, у нас всё красивенько настроено и тут Qt-шное приложение какое-нибудь выглядит совсем неправильно. Не проблема - запускаем qtconfig, выставляем GtkStyle в дефолтный - и наслаждаемся везде одинаковым видом (в том числе и иконки подхватываются). Аналогия в винде на самом деле - QWindowsXPStyle, QVistaStyle. Никто же их не старается портировать под никсы (ну.. здесь есть ещё проблема в портировании API VisualStyles и Aero, но, впрочем не в этом дело).

В итоге - то, что под линуксом есть зависимость, это не только нормально - это само собой разумеется. А под другими системами (где гтк не претендует на нативный стиль - ибо есть "более нативные") - он нафиг не нужен просто.

Добавлено через 1 минуту и 29 секунд
Ах да, кстати - clearlooks был первой попыткой унификации окружения. Кроме того, что он имитировал (достаточно неплохо) популярный гтк-шный стиль, он ещё и тягал гномовские иконки для кнопок и пр. И порядок кнопок умел ставить в гном-стайл (при использовании QButtonBox, или как его там).

Автор: JackYF 4.3.2009, 17:41
Ура, жду в репах.

Автор: kemiisto 4.3.2009, 17:44
Цитата(JackYF @  4.3.2009,  15:41 Найти цитируемый пост)
Ура, жду в репах. 

Только что обновился в Ubuntu 9.04. smile 

Цитата(just_geek @  4.3.2009,  12:00 Найти цитируемый пост)
Мне вот интересно, поддерживает ли этот стиль гткшные темы? Тогда от такого подхода был бы смысл какой-то.

 smile Проверил.

Цитата(just_geek @  4.3.2009,  12:00 Найти цитируемый пост)
Вообщем, не совсем понятно зачем тролли так сделали

Как раз всё логично. Под каждый DE - нативный L&F! Любитель, тоже об этом, вроде... 

Автор: Riddik 5.3.2009, 02:02
Я правильно понимаю: с QtCreator'ом теперь можно не возиться с утилитой make? Нужно скачать только QtCreator и Qt 4.5 и программировать под Qt? 

Автор: SABROG 5.3.2009, 10:08
Цитата(Riddik @ 5.3.2009,  02:02)
Я правильно понимаю: с QtCreator'ом теперь можно не возиться с утилитой make? Нужно скачать только QtCreator и Qt 4.5 и программировать под Qt?

Достаточно скачать SDK в котором уже всё включено. Установить и работать.

Только надо убедиться, что винда не ниже XP, а то тролли больше не поддерживают win9*,Nt/2000

Автор: Riddik 5.3.2009, 11:23
SABROG, благодарю!
Винда как раз ХР

Автор: ilyuha 5.3.2009, 12:40
Цитата(SABROG @  5.3.2009,  10:08 Найти цитируемый пост)
тролли больше не поддерживают win9*,Nt/2000

т.е. прога написанная на Qt 4.5 под 2000-ой уже не заведется? 

Автор: kemiisto 5.3.2009, 13:27
Цитата(ilyuha @  5.3.2009,  10:40 Найти цитируемый пост)
т.е. прога написанная на Qt 4.5 под 2000-ой уже не заведется?  

http://www.qtsoftware.com/products/platform/qt-for-windows.
Цитата

Qt supports the following Windows platforms:
    * Windows Vista
    * Server 2003
    * Windows XP
    * NT 4
    * Me/98
    * Windows CE

Забавный, ибо нет 2000! Может она подразумевается? smile 

Автор: SABROG 5.3.2009, 14:23
Будет работать, у меня программы работают все, которые я сам собираю. Возможно, что при переносе программы на младшие версии винды будут косяки, если она собрана скажем в висте.

Автор: JackYF 5.3.2009, 15:25
Да, и в Debian тоже уже приехало.

Автор: Tiffany 5.3.2009, 15:46
Я тут первый раз решила поставить SDK на windows XP. все поставилось, пишу первую программку, запускаю из creator - все работает. А пробуешь просто экзешник из папки - не хо =( Ругаеть что нехватает сначала mingwn10.dll, потом QtCore4.dll и т.п. Ну я эти либы нашла скопепастила в папку с экзешником - теперь запускается. А теперь вопрос - как-нить можно сделать так чтобы с написанными исполняемыми файлами не приходилось таскать все эти библиотеки?! А то скажем для программки в 400кб еще 13,5Мб dll-ок - как-то дико.

Автор: SABROG 5.3.2009, 15:50
Нельзя.

Автор: just_geek 5.3.2009, 16:07
Только если сделать статичную сборку Qt... Но размер .ехе увеличится в разы.

Цитата

А то скажем для программки в 400кб еще 13,5Мб dll-ок - как-то дико.

А ставить .net framework не дико ? smile

Автор: SABROG 5.3.2009, 16:22
У меня qip infium все 13 мегов занимает. Только я сильно сомневаюсь, что в нем есть столько функционала сколько есть в Qt.

Автор: vedm4k 6.3.2009, 06:53
Подскажите  в Ubuntu 8.10 кто нибудь ставил из репов? в основных что-то найти не могу не обновилось ещё до сих пор 4.4.3 кажет а не из репов не хочется както...

Автор: Tiffany 6.3.2009, 13:33
Цитата(SABROG @ 5.3.2009,  15:50)
Нельзя.

Ну как это нельзя? это даже смешно. ради прикола использовала QWebKit. Написала от себя всего 2 строчки - получился, типа, интернет-браузер (ну там странички со всем содержимым, переход по ссылкам и т.п.). А вес dll-ок, чтобы все это работало - 104МБ. На линухе то все собирается по божески, без фанатизма. Если на винде это "так и должно быть", то фтопку эту ерунду. Так скоро и "Hello world" на болванку не влезет.

Добавлено @ 13:36
Цитата(just_geek @ 5.3.2009,  16:07)
Только если сделать статичную сборку Qt... Но размер .ехе увеличится в разы.

А как сделать статичную сборку QT из дистра под Win? Хотяб чтоб одним файлом. А то у меня знакомый ржал долго когда я ему про браузер свой написала  smile 

Добавлено @ 13:37
Цитата(SABROG @ 5.3.2009,  16:22)
У меня qip infium все 13 мегов занимает. Только я сильно сомневаюсь, что в нем есть столько функционала сколько есть в Qt.

13Мб весят только 3, крайне необходимые либы(минимальный набор). 

Автор: just_geek 6.3.2009, 13:59
Цитата

А как сделать статичную сборку QT из дистра под Win? Хотяб чтоб одним файлом. А то у меня знакомый ржал долго когда я ему про браузер свой написала

Читать 
[url=http://prog.org.ru/wiki/index.php?title=Сборка статической Qt в Windows]здесь[/url]

Автор: Tiffany 6.3.2009, 15:42
спс. попробую сегодня.

Автор: SABROG 6.3.2009, 15:44
Цитата(Tiffany @  6.3.2009,  13:33 Найти цитируемый пост)
Написала от себя всего 2 строчки

Неважно сколько строчек ты напишешь - будет всегда тянуться вся библиотека. Сэкономить можно только на модулях типа QtOpenGL4, если его не используешь, то он и не тянется. И не надо забывать, что библиотека кроссплатформенная, а это означает, что программа должна выглядеть и выполнять функции одинаково на всех платформах, а значит в некоторых местах приходится отказываться от чистого API операционной системы и реализовывать свои функции с нуля.

Автор: ecspertiza 6.3.2009, 16:14
а 104МБ вес потаму что либы для дебаг версии, для релиза гораздо меньше весят.

Автор: W4FhLF 7.3.2009, 06:44
Кто-нибудь пробовал http://www.qtsoftware.com/developer/faqs/what-is-the-visual-studio-add-in/view? Это тоже самое, что qt-vsintegration-1.х.х?

Автор: just_geek 7.3.2009, 09:48
угу, обрезанный интегратор, только не знаю в чем smile Ибо коммерческую версию не использовал ни разу

Автор: SABROG 9.3.2009, 11:36
Цитата(just_geek @  3.3.2009,  21:59 Найти цитируемый пост)
Опа, оказывается ActiveQt теперь, тоже в комплект входит smile


Где это ты такое увидел? У меня например нет утилиты idc.exe и примеры не собираются:

Код

\MinGW\include" -I"..\..\..\include" -I"c:\OgreSDK\include" -I"..\..\..\mkspecs\
win32-g++" -o tmp\obj\release_shared\main.o main.cpp
In file included from ../../../include/ActiveQt/qaxbindable.h:1,
                 from ../../../include/ActiveQt/QAxBindable:1,
                 from main.cpp:42:
../../../include/ActiveQt/../../src/activeqt/control/qaxbindable.h:51: error: `Q
tValidLicenseForActiveQtModule' does not name a type
In file included from ../../../include/ActiveQt/qaxfactory.h:1,
                 from ../../../include/ActiveQt/QAxFactory:1,
                 from main.cpp:43:
../../../include/ActiveQt/../../src/activeqt/control/qaxfactory.h:56: error: `Qt
ValidLicenseForActiveQtModule' does not name a type

Автор: just_geek 9.3.2009, 12:38
idc лежит в папке src/tools/
Сам еще не собирал, но в pro файлах ActiveQt есть проверка редакции Qt.

Автор: cutwater 9.3.2009, 12:44
Tiffany, вообще чтобы не бросать библиотеки в папку с приложением достаточно добавить в PATH путь к кутешным библиотекам. а на другой компьютер таскать уже с этими библиотеками.
На линуксе ведь по сути тоже самое, там просто есть ldcache - кеш библиотек, и нужную библиотеку система ищет сначала в ldcache потом в системной переменной LD_LIBRARY_PATH
А в винде ищет сначала в текущей директории, потом в директориях из переменной PATH.

Добавлено через 1 минуту и 23 секунды
А парад .net фреймворков ставить
1.1, 2.0, 3.5 это действительно дико. при чем он и весит от 30 до 100 метров, а в распакованном виде побольше будет.

Автор: SABROG 9.3.2009, 13:18
Цитата(just_geek @ 9.3.2009,  12:38)
idc лежит в папке src/tools/
Сам еще не собирал, но в pro файлах ActiveQt есть проверка редакции Qt.

Вручную скомпилил idc, он даже сам скопировался в bin, но examplы так и не собираются.

Автор: just_geek 9.3.2009, 13:54
Вот тебе рецепт smile
1. Правим .pro файлы самого ActiveQt убирая проверку на EDITION 
2. Правим qglobal.h
Код

#define QT_EDITION_OPENSOURCE   (QT_MODULE_CORE \
                                 | QT_MODULE_GUI \
                                 | QT_MODULE_NETWORK \
                                 | QT_MODULE_OPENGL \
                                 | QT_MODULE_SQL \
                                 | QT_MODULE_XML \
                                 | QT_MODULE_XMLPATTERNS \
                                 | QT_MODULE_SCRIPT \
                                 | QT_MODULE_SCRIPTTOOLS \
                                 | QT_MODULE_QT3SUPPORTLIGHT \
                                 | QT_MODULE_QT3SUPPORT \
                                 | QT_MODULE_SVG \
                                 | QT_MODULE_GRAPHICSVIEW \
                                 | QT_MODULE_HELP \
                                 | QT_MODULE_TEST \
                                 | QT_MODULE_DBUS \
                                 | QT_MODULE_ACTIVEQT) // добавляем эту строчку

3. компилим activeqt
4. компилим idc
5. ну а теперь собираются примеры

p.s. не знаю будет ли работать на mingw, проверялось на VC++ Express Edition

Автор: SABROG 9.3.2009, 14:23
Взял бы лучше в виде патча оформил и троллям его smile

Либо пока нет официальной поддержки ActiveQt, либо это один из косяков релиза 4.5.0. Мне в принципе он пока не нужен, хотел просто затестить запуск excel в качестве COM сервера.

Автор: just_geek 9.3.2009, 14:37
Нашел в тролевском блоге. Так что про это они уже в курсе smile Может быть в 4.5.1 пофиксят это.
Цитата

ActiveQt is now part of the open source package too. We didn’t fix the build scripts, but it’s there. Note, however, that mingw cannot compile it: you need Visual Studio for ActiveQt.


Автор: just_geek 14.3.2009, 19:06
Гм увидел на фтп у троллей:
qt-sdk-win-opensource-2009.01.1.exe от 5 марта

Вопрос, а в чем отличия от релиза выпущенного 3 марта?

И кстати, вышел vsaddin beta 2 (10 марта)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)