Qt 5.2 Beta Available

Published Wednesday October 23rd, 2013 | by

I’m happy to announce that Qt 5.2 Beta is now available. Lots of things have happened since Qt 5.1. Apart from new platforms, we have also added a significant amount of new functionality and done large improvements under the hood.

Qt Everywhere

With Qt 5.2 we are introducing the production-ready ports of Qt on Android and iOS. A lot of work has gone into these two platforms and these ports now extend Qt’s multi-platform promise to cover desktop, embedded and mobile platforms with just one framework, Qt.

With full support for Android, iOS and Blackberry 10, Qt 5.2 is a great solution for targeting the mobile markets with one Qt-based mobile application code. This is also a big plus for our existing Qt users. It makes it fast and easy to bring your existing desktop or embedded application to mobile, by simply recompiling it.

Enhanced Internals — More Power and Flexibility

Qt 5.2 introduces a new Scene Graph renderer. This new renderer improves the graphics performance of Qt Quick even further, freeing up more CPU time for the application and using the GPU in a much more efficient way.

The former JavaScript engine, V8, which was used internally by Qt Quick, has been replaced with a completely new, Qt-specific engine. This new engine is now designed from scratch for the use case of QML and Qt Quick. It internally operates directly with Qt data types, avoiding many costly conversions. It has both a JIT and an interpreter which greatly extends the range of platforms and operating systems it can support. The interpreter also allows us to use the engine on iOS and comply with iOS AppStore policies.

New Modules and Nice Goodies

Some of the main new features of Qt 5.2 include:

  • Qt Bluetooth: supported on Linux with Bluez 4.x and Blackberry
  • Qt NFC: supported on Blackberry
  • Qt Positioning: supported on all platforms using NMEA data, and using GeoClue on Linux
  • Qt Windows Extras: Integrate with native code on Windows
  • Qt Mac Extras: Integrate with native code on Mac OS X
  • Qt Android Extras: Integrate with native code on Android
  • Improved time zone and locale support with QTimeZone and QCollator
  • Enhancements to multiple Qt Widgets and a new one, the QKeySequenceEdit class
  • Animations for QML that can not be blocked by high loads on the main thread
  • Some new features and mobile specific controls for Qt Quick Controls
  • Accessibility is now fully supported on all desktop platforms and basic support on Android.

For a more detailed list of all new features in Qt 5.2 please have a look at the New Features page in the Qt Project wiki.

Qt Creator 3.0

Qt 5.2 will ship together with a new release of Qt Creator, Qt Creator 3.0. The beta for Qt Creator 3.0 has also been released today and is part of the Qt 5.2 beta binary packages. The new Qt Creator will feature improved Android support, experimental iOS support, a cleanup in the Creator plugin APIs and improved support for lldb.

Qt 5.2 Beta now comes with binary installers for Windows, Mac and Linux. You can get Qt 5.2 Beta from the Qt Project download area for open source users, and in the Qt Enterprise Customer Portal for existing Qt Enterprise customers.

Did you like this? Share it:

Posted in Uncategorized

65 comments to Qt 5.2 Beta Available

Yuchen Deng says:

Awesome!

Ahmed says:

Congrats, actually for iOS I was amazed that everything goes inside Qt without a need to open xCode (even deploying to device)

Though there’s no way to add screenshots, select orientation … Etc

Also I have a question, is there a C++ APIs for the new renderer engine (as we currently use QGraphicsView and it’s very hard kinda to make a port of our huge C++ code to QML)

Salem Sharak says:

I second everything Ahmed says! ;)

Gunnar Sletta says:

Ahmed: No benefits for QGraphicsView, I’m afraid. The new scene graph renderer is an internal update to Qt Quick 2.0. There are no public API access points to it. All existing code making use of either Qt Quick 2.0’s QML or the QSGXxx C++ classes will get it automatically.

Thank you, excatly am looking for the new C++ APIs of the QSceneGraph, is there any sample or documentation of the classes, can you please point me out to an example displaying an image on the screen using the new QSceneGraph C++ APIs if possible

In the meantime we are happy with QGraphicsView performance but am willing to migrate still.

Lilian says:

Great news!
This release is definitely more exciting than the Qt 5.1(5.1 was good too but this one brings so many great changes).
Also, Digia, you’ve obtained some additional community points for becoming a Patron of KDE. :)

Sonu Lohani says:

Hey,

Sounds great that you’re working on android part. I love android and being in qt with android feels great. I hate java as it is a memory blogging language. But i am not satisfied with one thing i.e your tutorial. I went for how to build Qt for android and i followed all the steps but still i am getting error and this is something i cant even ask for, to you, cause help is available to the commercial customer only. No hurts feeling but you should update your documentation.

suy says:

You can ask for help on the interest mailinglist, on the forums on qt-project.org, on IRC, or on whatever other websites that you like (qt-forum, stack overflow, etc.).

And if you are sure that you found a problem on the examples, you can first, try to fix it yourself and contribute to the project, or if it’s out of your capabilites, report a bug.

You don’t need to be a Digia customer (or KDAB’s or ICS’s, or…) to do that.

Leena Miettinen says:

We are currently updating the documentation, so it would be really helpful if you would create bug. Or, at least add a link to the tutorial that did not work for you, so that we can check what might be wrong with it.

Sonu Lohani says:

Thanks for the reply. I will definitely post the error and will try to fix the bugs if possible. Thanks

Nahill Patel says:

Good news! So does this mean that Qt apps can be made available on the Mac and iOS app stores? What about QML applications?

@Nahill: Yes, you can. Mac App Store has worked sunce Qt 4.8 and there also are Qt 5.1 based apps already in the iOS App Store.

Robin Lobel says:

Congrats guys !

DiA says:

Very nice! Congratulations to the development team.
Do you have news about Qt3D? I am in the process of choosing a new 3D scene graph framework. Would be grat to choose Qt3D but diffucult without any concrete information about release date and specification. (Otherwise I will probably go with Coin3D+Qt)

Mathäus Mendel says:

There will be Visual Studio 2013 support, or at least an official installer for Qt 5.2?

dipesh says:

Fantastic release. Thank you all!

Zizek says:

Wow, awesome!!

thank you for your works!!
it’s a really amazing job..!

Bruno says:

We invested a lot of time in QtQuick controls, and from 5.1 almost nothing was implemented.
Where is the touch controls ? The promised treeview ??

Jens Bache-Wiig says:

I am afraid there was never promised a TreeView to be delivered already for 5.2 and the focus has been on improving the functionality of existing controls. That said, you might want to take a look at this thread for ideas on how to work around it. As for touch controls, there have already been several improvements to make the existing controls work better with touch in 5.2 and we plan to make a more extensive touch example in time for the final release to demonstrate what is already possible with custom styling and touch.

Cuke says:

I remember to have read about the treeview being bundle with the Qt 5.2 release too…shame that it’s not there :( . I’m quite sure that the reason is due to some sort of technical problem or incomplete solution. Can you write a blog about it Jens? On the place where i work, i daily use XAML that support treeview with custom controls. Why not using the same approach with QML?

The installer itself benefits from NSHighResolutionCapable and probably should be built with a newer version with Qt. The button text is not aligned correctly on OS 10.9 (Mavericks).

Lots of button icons and documentation screenshots are still low resolution. Any idea when those will ever be updated for HiDPI displays?

iieklund says:

For the installer part we are looking after those at the moment. Trying to get those fixed for 5.2 final.

Mike Krus says:

Wonder if the that button text issues is the same as described for Qt 4.8 here

Benoit says:

Great release, it’s really comfortable to work with and everything works out of the box! I have just tried a simple Android app with Quick Controls without any issue.

By the way, is it still planned to remove the QtWidgets dependency by default for Android builds? With this beta, QtWidget is still necessary when creating a simple app, making it a few Mb larger than necessary.

Serge says:

Thank you guys! You’re awesome!!

Jose says:

I’m not able to deploy the template Android App. The Qt Creator deploy process is stuck in this step:

16:02:54: Package deploy: Running command ‘/Applications/EclipseAndroid/sdk/platform-tools/adb -s 017cec7be39db2be pull /system/lib/libc.so /Users/jose/Desktop/build-android-test-Android_for_armeabi_GCC_4_8_Qt_5_2_0-Debug/libc.so’.

OS X Mavericks, Nexus 4

Kirill says:

Guys, really cool news! What about Android’s “SplashScreen issue”? Does it work in this release?

Sergey says:

I expected in 5.2 beta some replacement for setUnifiedTitleAndToolbarOnMac. QtMacExtras is there now, but no any way to make toolbar native looking. What to do with it?
Also qtcreator became very-very slow, switching betwiin files and just changing focus out and back to creator takes about 1-2 min, But i can add it to bug tracker. But concerning unufied toolbar there is already report and it’s closed because there was said new QtMacExtras should solve this problem but it doesn’t.

jimcad says:

I’d also like to know how to use the unifiedTitleAndToolbarOnMac on OS X. Any workaround exists?

Oliver Knoll says:

+1

Where is our Mac native toolbar? Without it Mac desktop applications just don’t grok.

I once tried to compile the QMacNativeToolBar (which was incredible difficult to track down – several links to its original Git location are now broken – a recent google research showed me this which might help to locate the code again: http://qt-project.org/forums/viewthread/28270), but it did not compile on OS X 10.8.5 (I tried to spot the issue, but it was not apparent within a few minutes, so I gave up: it claimed that some symbol was not defined, when in fact I think it was, however in Objective-C++ code which I am not 100% sure of).

Anyway, an easy-to-use-Qt-solution-as-we-know-it for a “native Mac toolbar” would be VERY welcomed and is highly desired :)

Oliver Knoll says:

Assuming that this is the official repository from Qt 5.2 will eventually be built:

https://qt.gitorious.org/qt/qtmacextras/source/36c12107171a57f1483602730fe797e5ed2ea5d6:src/macextras

There is a file called qmacnativetoolbar.mm after all – seems like just the docs about “Mac Extras” do not mention it yet ;)

Sergey says:

Hey, Qt guys! Are you here? Is anybody going say something to response to this message or bug tracker ticket: https://bugreports.qt-project.org/browse/QTBUG-34411
We can’t ship our commercial product with qt 5 having commercial qt 5.0, 5.1 and 5.2 because mac users don’t like not native look, and setUnifiedTitleAndToolbarOnMac is very important to achieve native look. Could we at least know when this task be solved?

Hese says:

Nice work! However, for now it seems that Android deployment was easier in 5.1.1 for my project. I have 2 executable sub-projects and several shared library and plugin sub-projects in my project tree and the new deployment system doesn’t handle that as well as the alpha did. I hope the new system gets fixed/improved to support more complex setups.

Siavash Sefid-Rodi says:

Hello Hese,

did you ever met problems with your project structure when deploying on Android?
I do work on a project with three subprojects A, B and C. A uses B as plugin and B uses C as plugin. Runs fine as desktop version but makes problems on Android, where A is not able to find B.

Hese says:

For now I got the project working by adding shared libraries that need to be autoloaded to the ANDROID_EXTRA_LIBS variable in pro-file. For the plugins (that should not be autoloaded) I removed the “TEMPLATE = lib” for android target so that the new deployment system picks them up to the apk.

Siavash Sefid-Rodi says:

Hello Hese,
thank you very much for the hint. Do you use the resource system in one of your library projects?
One of my libraries contains qml files which should be accesible from the other projects. I make them available via the resource system and define a präfix in the resources.qrc file. Unfortunatley this präfix can not be found at runtime.

Best regards

J says:

I’m not sure if here is the place for your question, but I’ll give you an answer anyway:

I think you need Q_INIT_RESOURCE if your library is static. Look at the Q_INIT_RESOURCE section on this page.

Jens says:

Hello,
just downloaded qt-mac-opensource-5.2.0-beta1-ios-x86_64-offline.dmg to start with iOS Development with Qt. Is there any information regarding configuration of qt creator (compiler, kits, devices). A tutorial like ‘Hello World’ would be great!

Thanks a lot

Leena Miettinen says:

Hello Jens,

The kit creation should be more or less automatic in Qt Creator on Mac OS X if you have Xcode installed.
However, you will need to configure the test devices using Xcode.

You should be able to deploy both Qt Widgets -based projects and Qt Quick projects to iOS devices.

We currently have the following instructions for creating device connections in the Qt Creator Manual:

http://doc-snapshot.qt-project.org/qtcreator-3.0/creator-developing-ios.html

I suppose we could add a tutorial, but I’m not sure what iOS specific information it would need to contain, after the development environment is set up. The current tutorials are here:

http://doc-snapshot.qt-project.org/qtcreator-3.0/creator-tutorials.html

You can also access these topics in the help file delivered with the beta package.

If you find errors in the docs or would like some information added, please create JIRA reports.

Leena

Jens says:

Hello Leena,

thank you very much for your reply to my post.

What I would like best is getting information about starting with iOS developement with Qt.
It would help a lot to have an example and some information about what is possible and what does not work at the moment (QtQuick 2 ?).

After having done the first steps the examples given are surely a great help.

BTW: In the article about connecting devices it is not mentioned that the iOS support is to be turned on in the plugins settings of Qt Creator. As a beginner this took me a while to figure out.

Thanks again for your reply and best regards,

Jens

Great work guys! Really looking forward to the release :)

Cheers,
Chris from V-Play

Jeffrey Lee says:

Great news,Qt5.2 inspire me!

HGH says:

Still no MinGW 4.8.1 version?

Kai Koehne says:

We decided to stay with MinGW-builds x32-4.8.0-release-posix-dwarf-rev2 for Qt 5.2 . That’s the exact toolchain we used for 5.1, and is also what is in the online installer. The toolchains are unfortunately not binary compatible (that is, you can’t run an app compiled with above toolchain with a newer, e.g. 4.8.1 based one), so using a newer toolchain for 5.2 would have forced us to ship it in addition to the 4.8.0 one, forced anyone to recompile etc.

Anyhow, the mingw-builds project is regularly providing qt 5 builds with the latest toolchains.

HGH says:

Does this mean that MinGW won’t be updated unti Qt 6 :)

Kai Koehne says:

No. It just means that we won’t update for 5.2, and re-consider for 5.3:

https://bugreports.qt-project.org/browse/QTBUG-32868

For 5.2 the patches to gcc and in the MinGW headers just didn’t seem to outweigh the costs.

openssl support for android, yay! :)

oenone says:

What about Windows Phone 8?

Matteo Italia says:

Great news! :) About QtBluetooth, is there any plan to support Android? I saw that there’s some code for it lying in the Necessitas repository, but there are no changes since 2011…

Eskil Abrahamsen Blomfeldt says:

There are plans yes:

https://bugreports.qt-project.org/browse/QTBUG-33792

It won’t be done for Qt 5.2 though.

Vinicius Gobbo Antunes de Oliveira says:

I’m working on a Qt 5 application where scripting will be a key feature and I’ve been using QtScript so far.

With the new Qt-specific-engine, do I have to be concerned about the future of the QtScript module when it comes to enable scripting inside my application?

My app makes heavy use of OpenGL and makes no use of QML so far (we plan to add it later, but will not happen soon…).

I think this is not the right place to ask about this, but the original article by Lars Knoll does not accept comments anymore.

Oliver Knoll says:

The Right Place(tm) to ask these kind of questions would be – among others – the mailing list qt-interest@qt-project.org.

;)

Hi,
I Just downloaded qt5.2 I, have tested my application with errors in qwebkit.

Qwebkit does not work in qt5.2? or is a beta bug?

thanks

VStevenP says:

I’m having a difficult time with the workflow for Qt 5.2 Beta as it relates to targeting iOS. I have XCode 4.5.1 with Command Line tools installed. I have configured my iPhone device in Xcode as mentioned int he link provided by Leena, but I don’t see any auto-generated Kits for iOS apearing in my Qt Creator 3.0.0 Beta Build Preferences, and I don’t see my device recognized under Devices when it is plugged in.

Jens says:

Hello,

it worked for me after manually adding the Qt versions in the build settings, exp. /Qt5.2.0/5.2.0-beta1/ios_x86/bin/qmake for ios simulator.

After doing so and connecting a device you should see the device, kits and other related items in Qt Creator.

VStevenP says:

Jens, thanks for that tip! I am able to now build my QtQuick2 app for iOS Simulator. It even launches the Xcode iOS Simulator, but it looks something went wrong with the deployment step.

Starting remote process.
file:///Users/stevep/Library/Application Support/iPhone Simulator/6.1/Applications/734CBA63-0648-4255-8CFB-7C4BBDB414D5/Resources/qml/MyApp/MyApp.qml:9:1: module “QtQuick” is not installed
import QtQuick 2.0
^

It can’t find QtQuick2. (!)

I tried creating a project from scratch, and I also observed the same problem. If you have an idea about how to get around this, let me know. If not, I’ll post about this issue to the Interest list.

Thanks for your advice so far!

Jens says:

Hi Steven,

unfortunately this is bug. This bug is known. You can get more information about it here https://bugreports.qt-project.org/browse/QTBUG-28357

As far as I figured out there exists no (easy, documented) workaround. Maybe someone who reads this can help?

Regards,

Jens

VStevenP says:

Thanks for the bug info, Jens!

Does QtMacExtras contain the function to set the dock icon menu? That is an exported function in Qt 4, but we’ve been told to expect it in QtMacExtras and is blocking the porting of an app I develop to Qt 5.

HGH says:

Will there be a prebuilt version for BlackBerry?

Svenn-Arne Dragly says:

You have done fantastic work with this new version! I’m especially amazed by the work put into easing development for Android and iOS.

As for Android, I have been testing Qt3D, and it has been working very well with Qt5.1. With the Qt5.2 beta release I’m getting hit very often with Android’s garbage collection during the building of 3D meshes. For instance, if I add 5-6 QML Sphere objects to a standard Viewport, I will get plenty of lines in the application output stating something along the lines of “GC_CONCURRENT freed x % …”. This causes the application to load very slowly, until all meshes are built. If there is any changes to the meshes during the run of the application, similar GC_CONCURRENT lines reappear and the performance drops again.

Has something changed that causes less memory to be available on Android with this release? If not, is there anything I can do to track down this issue before filing a proper bug report?

Jason Athey says:

Qt 5.X still remains unusable for our enterprise application until
https://bugreports.qt-project.org/browse/QTBUG-29769 is fixed :( along with non-frozen global object during initial QQMLEngine construction

These were not problems when QML was based around QDeclarativeEngine as it used native QtScript.

Soc says:

I would really like to see more features in QtWidgets and QtGui. The desktop is not dead..

Commenting closed.