📜 ⬆️ ⬇️

Qt 5 Alpha testing started

We are pleased to announce the release of the alpha version of Qt 5 - the first significant release of Qt since the launch of the Qt Project community. The Nokia development team thanks all enthusiasts of this community who are directly involved in the creation of Qt 5 Alpha, because many of the features of Qt 5 became available precisely because of their solid work. We are very pleased that the Qt Project has become a place where people unite to work together to develop their favorite framework.

The main purpose of the alpha version of Qt 5 is to get feedback from developers, which will help improve all subsequent releases. In the alpha release of Qt 5, emphasis was placed on providing basic Qt Essentials modules that form the basic functionality of Qt 5. These are cross-platform modules, sufficient to create most applications.

Qt 5 Alpha will not be distributed as a binary package, but source files are available for self-compilation. Of course, compilation instructions are also available.
')
The development of Qt 5 began about 9 months ago, with several main objectives, described in May last year by Lars Knoll, Qt Development Director at Nokia. Below is a list of these goals and what has already been achieved.


Basic concept


Almost a year ago, Lars Knoll wrote:
“Qt 5 should be the foundation for implementing new ways of developing applications. Retaining the tools for creating Qt applications in the C ++ language, the emphasis should be shifted towards using C ++ mainly to create the functionality of modular backends for Qt Quick. ”


We found a good way to approach this concept in Qt 5.0. This model works great in embedded systems that use full-screen interfaces. To use this model in desktops, most of the foundation has already been prepared, but it can be fully used in Qt 5.1 or 5.2 versions.

Open development


We wanted to conduct an open source development of Qt 5 with the support of a powerful community. After the launch of the Qt Project, we witnessed the formation of an energetic community, thanks to which many shortcomings were corrected and new features appeared in Qt 5.

Major architectural changes




New opportunities


Qt 5 in addition to architectural changes offers a number of new features. Their entire list can be found on the special page of the Qt Project community, and here we will list only the main ones.

Qt core



QtGui

Deliver all QtWidget related capabilities to a separate QtWidgets library. Adding native OpenGL support to QtGui and the emergence of the ability to work with root windows through the QWindow class.

Qt Networks

Add support for DNS queries. Removing the QHttp and QFtp classes in a separate module. Correction of a number of small errors.

Qt Widgets

Implementing porting to a new QPA architecture while maintaining compatibility with Qt 4.x.

Qt quick



Qt 3D and Qt Location

The appearance of several additional modules in Qt Essentials: first of all, it is Qt 3D for including 3D content and Qt Location for accessing GPS, maps and other location services.

Qt webkit

The WebKit C ++ API has not changed since Qt 4.x, but now Qt WebKit uses a later version of the WebKit engine, which provides better support for HTML5 and CSS3 technologies.

Porting from Qt 4.x to Qt 5


Now there is a problem with binary compatibility and, to a lesser extent, compatibility at the source level between Qt 4.x and Qt 5. Nevertheless, we have done a lot of work to easily transfer existing code to the Qt 5 platform. For example, at the moment we have Qt Creator, which can be built and run on both Qt 4.x and Qt 5 without changing the source code.

Qt Creator, launched on Qt 5 © Qt Project

If you want to try compiling your own Qt 5 project, you can find detailed instructions here .

It is also worth noting that now there is no need to port your own applications to Qt 5, since Qt 4.8 still continues to be supported by the community and companies such as Digia. However, we believe that Qt 5 contains enough advantages sufficient for switching to it in the long run.

Next steps


Since the start of Qt 5 development, a lot has been done, and you can help us bring Qt 5.0 to a finished look by downloading its alpha version, trying new features and letting us know about your feelings.

All reviews should be sent to development@qt-project.org ( lists.qt-project.org ) or simply report them as bug reports in our google tracker . All patches and bug fixes are also welcome - send them to codereview.qt-project.org .

Qt 5 Alpha is the first step towards the final release of Qt 5, and the main effort now will be to optimize the code and fix the remaining problems; we will try to complete Qt 5.0 development as soon as possible.

Once again, I want to say thanks to all members of the Qt Project community for their assistance.

Source: https://habr.com/ru/post/141400/


All Articles