Qt 5.5 Released

It is my pleasure to announce that Qt 5.5 has been released today. Over the last 6 months, we’ve been working hard to create a great release for you.

As a result, close to 1500 reported bugs have been fixed during this period, and we’ve implemented numerous performance improvements throughout the whole stack. We’ve filled a couple of holes in our cross platform offering, bringing better feature parity between the platforms in areas such as Multimedia and Bluetooth.

We have invested lots of efforts to make sure Qt 5.5 is ready for Windows 10 once it gets officially released by Microsoft. That Qt is running on top of the new WinRT APIs on Windows 8 already since Qt 5.3 gave us a great basis for those efforts. With this we are confident that we can fully support Windows 10 as soon as it is being made available with a Qt 5.5.x patch release.

Linux packages are now being built on RedHat Enterprise Linux, allowing to cover a wider range of Linux distributions (from RHEL 6.6 up to Ubuntu 15.04) with one set of binaries.

A lot of work has been put into the version for Mac OS X, where we now use Apple’s Secure Transport layer to enable SSL functionality, support Bluetooth and Bluetooth LE, support Qt WebView and fixed many issues with Qt Multimedia.

Simplified Product Offering

Another change coming with Qt 5.5, is a greatly simplified product structure. There are now three versions of Qt available.

Qt for Application Development is our commercial offering that allows you to create applications for all desktop and mobile platforms that Qt supports. It comes with full support and our flexible commercial licensing.

Qt for Device Creation is the second commercial product. It targets the creation of embedded devices, and comes with a lot of tooling and support to make this as easy as possible. Of course with full support and our flexible commercial licensing as well.

And finally, we have Qt Open Source, our open source version that you can use under the terms of the LGPL (version 2.1 and/or version 3) or GPL.

For more details about this new product offering have a look at our new product pages on qt.io .

New Functionality

As always, Qt 5.5 comes bundled together with the latest version of Qt Creator and a large amount of new functionality. Let me highlight some of them in this blog.

Bluetooth

The Bluetooth LE API that got introduced as a Technology Preview with Qt 5.4, is now final and supported on Android, Mac OS X and iOS in addition to the existing backends on Linux.

Graphics

With Qt’s root being a graphical toolkit, we have always had a strong focus on graphics. A good integration with OpenGL has been available since Qt 2 times. This integration has mainly focused on low level enablers and classes.

With Qt 5.5, we now take a large step forward, adding two new modules that greatly extend our set of 3D APIs:

Qt Canvas 3D is a new module that makes it very easy to directly use WebGL code from within Qt Quick. The module existed as a Technology Preview in Qt 5.4. We’ve taken the time since then to mature it, and I’m happy to now have it as a fully supported module inside the Qt frameworks. Qt Canvas 3D implements a WebGL-like API for Qt Quick, and can be used both with low level WebGL code or in conjunction with JavaScript frameworks such as three.js, making the handling of 3D content inside Qt Quick trivial.

The other new module is Qt 3D, available as a Technology Preview for Qt 5.5. Qt 3D existed as a library during Qt 4 times, but has now undergone some major rework to make it fit to the world of modern OpenGL.

Qt 3D takes our OpenGL support a large step forward making it much easier to integrate 3D content into Qt applications. The module comes with both C++ and QML APIs. For more details what Qt 3D 2.0 brings, you can check the Qt 3D documentation and the KDAB guest blog post. Being a Technology Preview, the module still has some rough edges. However, check out the Qt 3D game demo that V-Play managed to create already with the tech preview. Please let us know what you think, so that we can turn Qt 3D into a fully supported part of Qt with Qt 5.6.

Using OpenGL on Windows has always been somewhat problematic as good drivers are not available in all installations by default. Qt 5.5 helps solve this problem by switching dynamically between using the OpenGL driver or the ANGLE emulation layer implementing OpenGL on top of DirectX.

Qt Location

Another new module that now found it’s way to Qt 5.5 as a Technology Preview is Qt Location. Qt Location adds mapping, geocoding, routes and places support to Qt. In conjunction with the existing Qt Positioning API, it should give you all you need to create location aware applications. Qt Location can make use of different mapping providers. We currently support Nokia Here, Mapbox and Openstreetmap. Check out the examples in documentation.

Qt Quick

A lot of work has gone into improving Qt Quick. The QML and JavaScript engine now supports JavaScript typed arrays. In Qt Core, we added support for properties and invokable methods to Q_GADGETs, making it much easier to expose your own value based classes in QML. Qt Quick has gotten improvements to make Flickable and PinchArea work better on Mac OS X and iOS.

The Enterprise Controls have been folded into Qt Quick Controls and are now also available in the open source version. A TreeView control has been added to complete the set of controls required for creating desktop applications.

Qt Multimedia

A lot of work has also gone into Qt Multimedia. On Linux, we have now added gstreamer 1.0 support and lots of bugs have been fixed for the other platforms. Camera support has been greatly improved. The new Video filtering framework is a great new feature that allows the integration of frameworks, such as OpenCL or CUDA with VideoOutput elements.

Watch how Qt Multimedia with real-time video/camera integrates with the computer vision library (OpenCV) to create a real-time pattern recognition application that identifies speed signs on this short road trip. Further functionality could be added to this demo by, for example, displaying a warning if the vehicle's speed exceeds the last recognized sign.

Qt WebEngine

Qt WebEngine has been updated to Chromium version 40 and has received new APIs for managing downloading of files, controlling cache and cookies, as well as settings. Support for Qt WebChannel is now built-in and many experimental APIs are now public and fully supported.

Other Improvements

Of course, there are a lot of other improvements and new features in Qt 5.5. Please have a look at the wiki for all the details.

Deprecated Modules

With all these new features coming, some older ones are being deprecated, namely Qt WebKit, Qt Quick 1 and Qt Script. All of these modules are still available with Qt 5.5, but we strongly recommend using their replacements for any new functionality: Qt WebEngine, Qt Quick, and Qt QML, which also provides a fully compliant JavaScript engine. For most uses cases, the new replacement modules should be more suitable and provide better functionality than the replaced ones.

Learn More about Qt 5.5

To ease you into Qt 5.5, we have scheduled 2 LIVE webinars (July 2nd & July 3rd) so you can hear first hand what is new in Qt 5.5. Please make sure to register here.

Learn Even More at Qt World Summit 2015

Registration for the Qt World Summit 2015 (Oct 5-7, Berlin) is open. This is the main global Qt event where Qt experts from The Qt Company and the community will deliver 50+ technical and strategic sessions. Qt World Summit will give you the knowledge you need to kick start your Qt development project as well as provide you with the insight and tips and tricks necessary to make sure your Qt product is successful. Make sure to register today and take advantage of the Early Bird pricing (SAVE EUR 70) ending July 13th and/or learn about group discounts: www.qtworldsummit.com.

Thanks!

I’d like to take the opportunity to thank everybody who helped develop and create Qt 5.5. The release wouldn’t have been possible without the hard work of many people in the community and from The Qt Company. A special thanks goes to KDAB, who invested lots of time and efforts to make the Qt 3D Technology Preview ready for Qt 5.5.

Now go and get Qt 5.5 from your Qt Account portal or from qt.io/download. Enjoy!


Blog Topics:

Comments