LINUX.ORG.RU

Представлен Qt Creator 2.6 и порт Qt для платформы Android

 , ,


1

1

Компания Digia представила релиз интегрированной среды разработки Qt Creator 2.6, предназначенной для создания кроссплатформенных приложений с использованием библиотеки Qt. Поддерживается разработка как классических программ на языке C++, так и использование языка QML для определения сценариев, в которых используется JavaScript, а структура и параметры элементов интерфейса задаются CSS-подобными блоками. Исходные тексты Qt Creator распространяются в рамках лицензии LGPL.

Самое интересное:

  • Концепция комплектов (Kits) заменила собой ранее используемую привязку целей (Targets). Ранее разработчик мог добавить к проекту цели, определяющие наборы типовых предопределённых настроек, например, указать, что создаётся приложение для десктопа или клиент удалённого доступа. Теперь вместо этого предлагается более общая концепция комплектов (Kits).
  • Экспериментальная поддержка разработки и отладки Qt-приложений для платформы Android с использованием компонентов, созданных в рамках проекта Necessitas (см. ниже).
  • Из-за отсутствия мэйнтейнера прекращена поддержка платформы Symbian.

>>> Подробности



Проверено: mono ()

Из-за отсутствия мэйнтейнера прекращена поддержка платформы Symbian;

Symbian до сих пор поддерживали?

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

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

flareguner ()

Как там с поддержкой cmake? Есть продвижения?

Zodd ★★★★ ()

Интересно, Digia заинтересована в интеграции PyQt/PySide в QtCreator? Запросов на это достаточно много, но все никак не хотели подступаться к ним. Проект есть http://code.google.com/p/qt-creator-python/ , но будет ли он влит в основную ветку?

XVilka ★★★★ ()
Последнее исправление: XVilka (всего исправлений: 1)

Все-таки симбиан до сих пор лучшая мобильная ОС.

anonymous ()

Добавить бы про поддержку проприетарщины: VCS clearcase и разработку под BlackBerry.

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

Одно изменение:

CMake Projects
* Added CMake specific context menu items to the CMakeLists.txt editor

olegk ★★ ()

а что про clang code model слышно?

anonymous ()

Жуть. Зачем было копипастить, если ссылка есть, а разницы нет?

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

Ожило и трепыхается иногда в мастере, но я куда больше жду поддержку qbs.

Gorthauer ★★★★★ ()

Из-за отсутствия мэйнтейнера прекращена поддержка платформы Symbian

Не очень-то и хотелось. :-)

cruxish ★★★★ ()

А для яблочных мобильных устройств будет поддержка?

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

Вот если честно, не надо. Пусть будет оптимальное иде для qt/c++ (какое оно и есть сейчас) и отдельно пусть будут для питон, руби, д итд, хватит комбайнов. Пожалуста!

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

В коде Qt есть бранчи ios и winrt, названия сами за себя говорят.

Gorthauer ★★★★★ ()

Из-за отсутствия мэйнтейнера прекращена поддержка платформы Symbian;

Вся суть опенсоурса.

Не было мейнтейнера -
Репы все
Пропали.
Коммиты прекратились -
Баги всех
Достали.
Баги всех достали -
И проект
Убит.
Юзеры уходят -
Бизнес прочь
Бежит.
ЭмЭс идёт на рынок,
Пленных не щадя,
Оттого, что в кузнице
Не было гвоздя.

D_Lans ()

GUI у него все такой же плохо настраиваемый (например невозможно в правой области показать outline)?

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

Я его делаю, так что могу ответить. Digia (а точнее основная команда разработчиков) не заинтересована. Подступиться и правда трудно: первая попытка была ещё года 3 назад от Nokia, а в этом году один китаец хотел сделать на GSoC - всё пролетело. Лично у меня уже месяцев 5 полоса неудач и отсутствия интереса.

Впрочем, теперь обещаю до декабря заниматься улучшением работы с проектом и натравливанием pyuic на формы. Модель потом.

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

Для нее до сих пора даже программы пишут.
Жаль, что они так и не осилили нативный компилятор для симбиан под онтопик. Я бы еще парочку аппликух туда портировал.

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

Для андроида спеки добавили (уже сказали), обширный коммит с поддержкой автодополнения cmake неделю назад смержили (в 2.6 не попало ЕМНИП), ещё что-то по мелочи. Если я вас правильно понял, вы хотели выбирать для Qt-шных шаблонов систему сборки, какой-нибудь переключалкой между qmake/cmake. Так делать пока и правда нельзя, а жаль.

У меня сейчас недоделанный патч есть для автокомплита файлов .so/.a в qmake, как проверю его работоспособность под виндой - отправлю и могу взглянуть, чего там не хватает в cmake.

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

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

Ximen ★★★★ ()

Раз уж такая новость, спрошу заодно: есть ли в нём возможность компилировать C-код? Скажем, весь проект у меня на C++/Qt, но логика реализована только на C. Переписывать не хочется, потому что хочу к нему ещё и GTK+ прикрутить. Есть ли бескостыльный путь?

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

Да, так как C++ имеет обратную совместимость. Это в теории. На деле - попробуй.

flareguner ()
Ответ на: комментарий от trex6

Жаль, что они так и не осилили нативный компилятор для симбиан под онтопик. Я бы еще парочку аппликух туда портировал.

Гуглить gnupoc. Само весь тулчейн скачает и нужный SDK под нужные версии симбиана тоже. Нативный компилятор под онтопик в комплекте. arm-none-symbianelf

Для S60v3 проблем не было никаких.

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

Круто! А я мучаюсь уже около 2х лет с виндой в виртуалке или Remove Compiler.

Оно и подписать пакет умеет для загрузки его в ovi?

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

Да, так как C++ имеет обратную совместимость. Это в теории. На деле - попробуй.

Не годится. Во-первых, C++ не имеет обратной совместимости, читай про стандарты. Во-вторых, мне нужно, чтобы он компилировал именно сишный код, менять в нём я не собираюсь ни строчки.

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

Изначально просто брать и заменять свой парсер на clang никто не собирался - разработчики не хотят регрессий, даже ради точного анализа. Где-то в 2010 был составлен долгосрочный план, и один инженер - Erik Verbuggen - начал работу. И вот автокомплит/подсветка уже заработала, и тут столкнулись с проблемами производительности - в файлах самого QtCreator репарсинг генерация дополнения занимает до 0,6 сек, подсветка - до 1 сек.

Потом Erik Verbuggen уехал на полгода в отпуск, а теперь его бросили затыкать недостаток сил в нативном парсере. Экспериментальная поддержка сделана на 50% - ещё нет лексера и индексера на clang, для этого используется нативный парсер.

А теперь плавно перейдём к делу. «Экспериментальная поддержка» - это значит всё глючит, половина кода не подсвечена и куча регрессий. Erik занят, Digia больше никого не выделит (типичная проблема курицы и яйца), и справиться может только сообщество. Что надо сделать:

  • Подсветка работала хреново, я немного улучшил одним патчем и имею второй на локалхосте, после которого регрессий в этом останется мало. Но всё равно - будет очень здорово, если кто-то возьмётся за тестирование в мелочах.
  • С версии 2.6 QtCreator показывает аннотации для автокомплита, но в модели clang они ещё не приведены к человекочитаемому виду. А если добавить к аннотации распечатку doxygen или код функции (clang это может), то будет вообще конфетка.
  • Диагностика ошибок до сих пор идёт в консоль (которая stdout), а надо бы сделать как в XCode или хотя бы как сейчас в QtCreator, т.е. ошибочную зону подчёркивает и показывает подсказку с текстом при наведении курсором на подчёркнутый текст
  • Скорость можно побороть четырьмя способами. Первый самый простой и Erik его видимо просто для своего удобства вырубил - нужно просто включить флаг CacheCompletionResults, ускоряет дополнение кода раза в 2. Второй сложнее: добавить precompiled headers. Я тут экспериментировал немного, сделал генерацию pch в папку ~/ и считывание оттуда, но почему-то не заработало. Третий способ наметил, но не реализовал Erik - половину времени генерации подсветки занимает повторный парсинг файла clang'ом, другую половину выжирает сам QtCreator, и было предложение подсвечивать только тот текст, который сейчас отображается на экране (XCode к слову так же примерно и делает). Четвёртый способ опять же из XCode - по моим наблюдениям, когда кодер начинает печатать идентификатор, XCode делает слепок (snapshot) файла и его парсит, просит дополнение в точке где начат ввод идентификатора (а это занимает 0,3-0,4 сек) и затем просто фильтрует. Ну типа вводит пользователь: CVertexShader vert, а среда перед буквой «v» делает снапшот и спрашивает у clang дополнение, и фильтрует результаты по слову vert - и юзер XCode думает что среда быстро работает, хотя на деле она тормозит. В QtCreator всё наоборот: только если юзер перестаёт печатать, тогда среда через 150 мс запускает парсинг и долго ждёт его конца.

Добровольцы могут приступать ;)

quiet_readonly ★★★★ ()
Ответ на: комментарий от Stanson
user@machine:/some/path$ ping gnupoc.org -c5
ping: unknown host gnupoc.org
user@machine:/some/path$ ping ya.ru -c5
PING ya.ru (77.88.21.3) 56(84) bytes of data.
64 bytes from www.yandex.ru (77.88.21.3): icmp_req=1 ttl=54 time=11.2 ms
64 bytes from www.yandex.ru (77.88.21.3): icmp_req=2 ttl=54 time=11.0 ms
^C
--- ya.ru ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 11.078/11.147/11.217/0.126 ms
user@machine:/some/path$ 

=(

trex6 ★★★★★ ()

Экспериментальная поддержка разработки и отладки Qt-приложений для платформы Android с использованием компонентов, созданных в рамках проекта Necessitas (см. ниже);

к несчастью, судя по тому, что в qt-creator 2.6 нет никакого намека на поддержку андроида — этот пункт был только анонсирован, но еще не реализован.

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

Ах да, ещё одна проблема в clang code model, которую надо исправить: автодополнение функций не работает, если они обёрнуты в макрос или представляют собой указатель на функцию. Для примера можно взять функцию freopen из glibc или использовать OpenGL посредством GLEW. Тестовые проекты для обоих случаев могу скинуть любому желающему.

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

Справка->О модулях, проверьте включён ли плагин для Android (т.е. стоит ли зелёная галка).

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

для qmake'а креатор честно парсит pro файлы а для цмака он заставляет цмак сгенерить code blocks проект и уже его парсит. А нужно научить его напрямую cmake файлы парсить.

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

Врубить плагин не пробовали? Он по умолчанию выключен!

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

оно реализовано как плагины? оно дополнение умеет? или использует стороннюю библиотеку для автокомплита

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

Ни дополнения, ни семантической подсветки. Два плагина.

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

а есть либы для парсинга и реализации автокомплита питона? неужели все делают это с нуля?

I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от trex6

Ребят, ну вы уже и гуглить разучились? Чо за стыдоба-то?

http://www.martin.st/symbian/

Version 1.22 (July 12, 2012) - Support the new versions of the S60 3.0, 3.1, 3.2 and 5.0 SDK packages, allow installing CodeSourcery GCC 2011.09-67

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

Оно и подписать пакет умеет для загрузки его в ovi?

Да, умеет. Причём как нативными тулзами ( в gnupoc лежат ), так и оригинальными из скачанного SDK через wine. Всё прозрачно, makefile писать несложно.

Stanson ★★★★★ ()

Обрадовали конечно дропом симбы, что ещё сказать. Придётся старую версию использовать.

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

А дак в ови же можно реквестировать подпись, или вам что– то особое нужно?

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

Вот если честно, не надо. Пусть будет оптимальное иде для qt/c++ (какое оно и есть сейчас) и отдельно пусть будут для питон, руби, д итд, хватит комбайнов. Пожалуста!

Согласен. В комбайнах, где реализована «куча всего», как правило, ни один инструмент не работает нормально, или работает, но с ограниченными возможностями. QtCreator - хорошая, годная среда разработки, пусть таковой и останется.

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