Lars Knoll

Qt 5.8 released

Published Monday January 23rd, 2017
92 Comments on Qt 5.8 released
Posted in Biz Circuit & Dev Loop, Releases

I am happy to announce that Qt 5.8 has been released today and is available for download from qt.io. Qt 5.8 does of course come with Qt Creator 4.2.1 and an update to Qt for Device Creation. Qt 5.8 is a rather large release, containing quite a large set of new functionality. Let’s have a look at some of them:

Qt Lite

One of the main themes of Qt 5.8 has been to make Qt more flexible and easier to adopt to your use case, targeted especially at our embedded users. Qt Lite has been the codename of the project under which we did those changes.

Our goal has been to make it easier to configure Qt to exactly your needs and leave out features that you don’t need in your project. This brings major savings in the size of the compiled Qt libraries and thus your application.

Implementing support for this put us on a longer journey, where we rewrote most parts of the system that was being used to configure Qt. The new system cleans up a system that had grown over the last 15 years, and that also lead to many inconsistencies on how Qt was being configured on different host platforms.

As a result, we now have one unified system to configure the different parts of Qt. In addition to giving our users a lot more flexibility in configuring Qt, it will also ease our burden in supporting all the different ways Qt can be configured and used.

Using the new system allows you to create a Qt build tailored to exactly your use case. You can leave out all the features in Qt that you don’t need, saving ROM and RAM when deploying to your embedded device. To give you an idea of the size savings possible, the image below shows the size of the required Qt stack to run a small QML application:

Size of sample app using Qt 5.6 and a lite configuration of Qt 5.8

As you can see, the new configuration system allows for significant reductions in size and savings of more than 60% in binary size compared to Qt 5.6.

Qt Wayland Compositor

The Qt Wayland Compositor API that we included as a Technology Preview in Qt 5.7 is now fully supported in Qt 5.8. The module makes it very easy to create your own Wayland Compositor.

Qt Wayland Compositor make it very easy to implement your own custom home screen and application manager. This allows the creation of powerful and more complex embedded systems where you have multiple applications that have their own user interfaces. Qt Wayland Compositor supports handling multiple screens in an easy and transparent way. It comes with both QML and C++ APIs.

For more details, have a look at the API documentation and examples, as well as this blog post, which also features a tutorial.

Communication and Networking

Qt Serialbus has now graduated to be fully supported in Qt 5.8. It allows you to use Qt APIs for device bus communications and protocols. While the API is rather generic, this version includes implementations for CAN and Modbus.

Qt Network and Web Sockets gained full support for TLS PSK cyphersuites. Qt Network now supports configurable Diffie-Hellman parameters and HTTP/2 in QNetworkAccessManager.

Qt Bluetooth gains BTLE Peripheral support on macOS and iOS as well as BTLE Central support on WinRT.

Qt 5.8 also adds a new Qt Network Authorization module as a Technology Preview, currently supporting the OAuth 1 and 2 authentication schemes.

Qt QML and Quick

Quite a few things have happened in Qt QML and Qt Quick. The QML engine has gained support for caching binary representations of QML and JS files on disk, reducing startup time and memory consumption of the engine. The commercial only Qt Quick compiler is still supported in 5.8, but we are planning to merge it with the new caching infrastructure in the future, leading to a better performing and more tightly integrated solution.

The Qt Quick scene graph has undergone a larger refactoring, making it less dependent on OpenGL. This allowed us to add an experimental Direct3D 12 backend for Qt Quick, and does enable the creation of other backends e.g. based on the Vulkan graphics APIs.

In addition, the scene graph now supports partial updates to the screen if only a small area of the scenography changed. This brings some larger performance improvements to the Qt Quick 2D renderer.

We also used the changes to the scene graph as an opportunity to fold the functionality of the Qt Quick 2D renderer into Qt Quick directly. This implies that the Qt Quick 2D renderer does not exist as a standalone module in Qt 5.8 anymore.

Larger changes have also been done under the hood with respect to Mouse and Touch event handling, unifying them internally in a new QQuickPointerEvent class. This lays the foundation for future improvements to mouse and touch event handling, but doesn’t affect code using Qt Quick yet.

The Qt Quick Controls 2 have also gained a couple of new types such as dialogs, rounded buttons and tool separators. The Material and Universal styles have gained some new effects and support for a ‘system’ theme.

Qt Webengine

As always the Chromium version used by Qt Webengine has been updated, this time to Chromium 53. One long outstanding feature added in Qt 5.8 is the ability to print web pages. Many smaller new features have been added, amongst them a new QML API to define custom dialogs, tootips and context menus, and support for view-source: and some chrome: schemes.

Qt SCXML

Qt SCXML is now fully supported in Qt 5.8. The module makes is trivial to integrate SCXML based state machines into Qt. It builds directly onto the Qt Statemachine Framework, and extends it with with both a SCXML to C++ compiler and a runtime that allows loading SCXML based state machines.

Together with the Qt SCXML module, Qt Creator 4.2 gained support for editing state charts.

New Technology Previews

Also in Qt 5.8, we have new functionality that we chose to introduce as a Technology Preview.

Qt now compiles for both Apple’s tvOS and watchOS. While most of the functionality that we support on iOS should also work on tvOS, watchOS support is limited to the non-graphical functionality in Qt.

Qt Speech has been added as a new module adding support to text to speech functionality.

Other improvements

After the initial release of Qt 3D with Qt 5.7, the focus for 5.8 has been on maturing the module. A large amount of bug fixes and performance improvements have been made for the module.

Qt Charts has gained a Candlestick chart type and we have made the QOpenGLTextureBlitter API in Qt Gui public.

Our embedded platforms supported by Qt for Device Creation have gained better support for multi-screen systems when using the eglfs QPA plugin and support for 90/180 degree rotated screens.

Finally, many changes happened to our code base to make better use of the new features offered by C++11 and with that clean up and modernize our code base.

Thanks to the Qt Community

Qt 5.8 adds a lot of new functionality and improvements. Some of them would not have been possible without the help of the great community of companies and people that contribute to Qt by contributing new functionality, bug fixes, documentation, examples or bug reports. Thank you!

You can read more about the release and watch our launch video here, get Qt 5.8 from your Qt Account or www.qt.io/download. I hope you’ll like and enjoy the new release!

Do you like this? Share it
Share on LinkedInGoogle+Share on FacebookTweet about this on Twitter

Posted in Biz Circuit & Dev Loop, Releases

92 comments

A Fan says:

Great to hear of all these improvements!

PS – tiny typo: In the SCXML section, there’s an “and and”.

Carl Engh Carl Engh says:

Thanks – typo removed.

Dimi says:

Cool, so now we have “sort-a-qml-compiler”, but few days in I now realize this thing is buggy as hell. Is there a way to disable that functionality for the application? I am happy with the loading speeds without it, and with it my customers cannot update applications unless every QML file changes in order for all the cache to be recompiled, or alternatively they have to go and delete the cache manually, which is very inconvenient.

Please let there be a way to disable this until it gets fixed!

Stephan Schrader says:

Great job, thank you!

Dimi says:

Any information / guide on how to make them Lite builds? Or is it just good old configure and the magic happens internally?

Jake Petroules Jake Petroules says:

Yes, exactly.

Moabi says:

Good Work guys. Can’t wait to give it a try.

Christian Feldbacher (V-Play) Christian Feldbacher (V-Play) says:

Congrats for the release to the whole team & all contributors!

NoName says:

Great work, keep it up!!!

Ivan Kashurnikov says:

In Qt 5.8 when using Micrsoft Visual Studio and cmake it does not properly pass the flags run moc:
Qt5CoreMacros.cmake:
macro(QT5_GET_MOC_FLAGS _moc_flags)

if (MSVC)
set(${_moc_flags} –compiler-flavor=msvc) – _moc_flags overwritten
endif()
endmacro()

Dimi says:

After installing the QML project no longer runs:

module “QtSensors” is not installed

It was working fine with the RC. What is going on here?

@Dimi: First thing would be to retry the installation. If the problem persists, please file a bug report with as much details as possible at https://bugreports.qt.io

bnogal says:

i just updated my app to the 5.8 and everything seems going fine, but there is a tcpserver caling .listen() failing always..

It try to bind to a random port.. but always returns false…

i did a dummy project, calling just that and fails.

Is my computer? Windows 7?

bnogal says:

Ok, workaround calling QNetworkProxy::setApplicationProxy(QNetworkProxy());

Seems there is a problem with the application level proxy…
Calling listen generates the error “The proxy type is invalid for this operation”

Since when a proxy configuration forbid the creation of sockets?

Thiago says:

It happens if QtNetwork detected that you have a system proxy that does not support listening, such as an HTTP proxy. Can you create bug report for us and share the details of the proxy configuration in your system?

Axel Jäger says:

What does BTLE central support von WinRT mean? Can we GATT-entries from connected BTLE peripherals?

marco says:

Lars:

Where is the documentation/examples for “Qt Lite” building from command line?

“Qt Lite” is using qmake and json, but give us a little more guidance
on how to get started.

I have been using 5.8.0 RC for 2 weeks and it seems stable.

So there should be no problem with 5.8.0 release.

Olivier says:

I hope the rumours of Qt dropping support for Gtk2 themes is not true. That’s the only way to get access to adequate (dark) themes and get a consistent look between applications.

Lilian says:

I could not find any information on Qt Lite.
Ran the `configure` script from `qt-everywhere-opensource-src-5.8.0` archive, maybe the tool is generated – nothing…
Thought maybe it is a separate project in the repository – nothing…

Where is this tool? Or it is only a commercial offering and it was not mentioned?

Christian Kandeler Christian Kandeler says:

“Qt Lite” is not a tool, but a concept that enables you to opt out of unwanted features more easily (or at all).
There is also a graphical convenience tool for selecting such feature sets, which is currently part of the “Qt for Device Creation” offering. On the command line, you can use configure’s “-feature-*” and “-no-feature-*” options.

Dimi says:

How are features new? I recall the option to remove features for at least a year, maybe more.

What about dependency graphs and stuff like that? From my experience, missing requirements don’t result in refusal to build, but in failure to build, usually after a lot of time has been wasted.

Someone should sit down and write at least a basic blog post on the subject, because obviously people are completely in the dark.

Thiago says:

If you’re doing this from inside a previous build of Qt, please clean your build dir completely of any artifacts. Specifically, remove any files named .config.* and .qmake.*.

Also, please check if your parent dir has such files.

jeff liu says:

seems it is only for Qt for Device Creation !!!!!!

pls refer http://doc.qt.io/QtEnterpriseEmbedded/qt-configuration-tool.html

for free version . seems nothing :(…….

Jake Petroules Jake Petroules says:

Qt Lite is a term which refers to the enhancements that were made to the existing (Open Source) Qt configure functionality in Qt 5.8. You implicitly use Qt Lite any time you run the configure script, without even knowing it. Essentially, all “Qt Lite” does is provide a lot more of those -feature-* / -no-feature-* flags to configure than were previously available, and makes sure they actually work in concert with each other. Very significant internal changes were made to provide a scalable infrastructure for doing this.

The part which is available only under Qt for Device Creation licenses is the Qt Lite graphical configuration tool. The graphical tool is not required to use Qt Lite, but makes the process significantly easier by providing you with an easy-to-use interface for configuring features and automatically generating the configure.json files which are tedious and difficult to write by hand.

Hopefully this clarifies the situation for you.

Lilian says:

This clarifies everything. Thank you!

Nick says:

Where are the qt Lite docs?

Rupert says:

First: Good show on getting this release out the door. My shorts are thoroughly oblique.
Secondly: I know times are tough, but I have been trying to download the 7z ball from the official link for the past 2 hours (in the heart of Silicon valley, not deepest darkest Africa) and I am still likely to die of old age before this turkey lands. Do you people have an old 386 BSD box serving this file out? Or some Finnish dude transcribing this down the wire?

Dimi says:

I downloaded the source archive at about 200k – fairly slow compared to the sdk offline installer, which was 2mb/sec. It would seem the sources are hosted at a much lower priority. Note that the offline installer contains the sources too, but I tend to not opt for that, because installing them takes the installer a ridiculous amount of time.

Jani Heikkinen Jani Heikkinen says:

There shouldn’t be that kind of prioritization at all. Unfortunately mirroring seems to be badly ongoing still. We are investigating the issue.

@Rupert: There were problems with mirroring the open-source version. It is improving, but still not as good as it is typically at the time of release. This also means that master server is under much higher than usual load as many downloads point to master, not the mirrors. We are investigating why this happened. Commercial downloads come via a different delivery system, which seems to be working fine.

Chris Bruner says:

I tried the text-to-speech and it said that a plugin was not located (desktop). I have festival installed as well as espeak, what plugin is it expecting? What speech synthesizers does it support?

Christoph says:

You need speech-dispatcher

Chris Bruner says:

Well I’ve got speech-dispatcher installed and working. (tested with spd-say “hello” and it worked).
It’s using espeak as it’s default, and I’ve got some others installed.
The example code compiles and runs but doesn’t find any synthesisers, beyond the hard coded “default” which does nothing.

any ideas?

Fabio says:

Can you provide more info about new QML caching method? I mean in which phase the QML code is cached? Currently the qml files are stored as resources inside the executable, is there something to change for allow the qml code to be cached correctly?
Thank you for your work

Simon says:

The cache files are created on-the-fly at run-time, not (yet) ahead of time. You can think of it as a mechanism that is quite similar to how python generates .pyc files for python files on the fly.

Shantanu Tushar says:

How about QML files loaded from resources (which are part of the .exe on Windows) ? Will they benefit from this caching as well?

Maurice Kalinowski Maurice Kalinowski says:

Yes they to.

Corey says:

How is this different from the JIT compiling that was being done previously?

Corey says:

This is my question too! I was under the impression from previous wiki and blog posts, that the QtQuick Compiler was being open sourced with Qt 5.8, not a different tool. I’m eager to learn more about the new tool and how it compares to the compiler.

Malek Khlif says:

Yesssssssssss 😀 Thanks to the Qt Community :*

Will Stokes says:

What do you think of providing a tool that given a code base could return a set of flags or configure file to pass to qt’s configure tool to build a minimal Qt lite version for you application.

Eeli Kaikkonen says:

That’s my question, too.

Kai Koehne Kai Koehne says:

This doesn’t work for features that do not match an API. Anyhow, I agree that the idea is pretty nice. We’ll certainly explore ways to make configuring Qt even easier.

Luke says:

Just a note for the future, it would be good if the download mirrors were pushed to before the announcement of the release. I can only hit master.qt.io which is providing 40kB/s, none of my local geographical mirrors have the installers yet.

Jani Heikkinen Jani Heikkinen says:

Actually mirroring was started already on Friday. We need to check why it took so long time to do the mirroring at this time.

Luke says:

Yeah, normally the mirroring is fine and ready, so I thought it was strange.

Using
https://download.qt.io/official_releases/qt/5.8/5.8.0/qt-opensource-windows-x86-msvc2015_64-5.8.0.exe.mirrorlist
shows only 3 mirrors for me whereas the 5.7 release currently shows 13 mirrors.

I’m based in Australia so I normally use the Japanese or Chinese servers listed on http://download.qt.io/static/mirrorlist/ and they still don’t have the files in the 5.8 release directory. On one of the Japanese servers it’s like the mirroring stopped after 3 files.

Wiglaf.cai says:

is it possible you could provide your client ip and which mirror you were using?

younky says:

Build with VS 2017 RC, and it fails with the following configuration params.
c:\DATA\qt-everywhere-opensource-src-5.8.0>configure -prefix “c:\Qt5” -opensource -release -nomake tests -sql-sqlite -sql-psql -sql-odbc -sql-mysql
+ cd qtbase
+ c:\DATA\qt-everywhere-opensource-src-5.8.0\qtbase\configure.bat -top-level -prefix “c:\Qt5″ -opensource -release -nomake tests -sql-sqlite -sql-psql -sql-odbc -sql-mysql
Please wait while bootstrapping configure …
= c:/DATA/qt-everywhere-opensource-src-5.8.0/qtbase
= c:/DATA/qt-everywhere-opensource-src-5.8.0/qtbase

Microsoft (R) 程序维护实用工具 14.10.24728.0 版
版权所有 (C) Microsoft Corporation。 保留所有权利。

cl -c -Yc -nologo -Zc:wchar_t -W3 -GR -EHsc -w34100 -w34189 -wd4577 -DUNICODE -D_CRT_SECURE_NO_DEPRECATE -DQT_BOOTSTRAPPED -DQT_BUILD_CONFIGURE -DQT_USE_QSTRINGBUILDER -DQT_VERSION_STR=\”5.8.0\” -DQT_VERSION_MAJOR=5 -DQT_VERSION_MINOR=8 -DQT_VERSION_PATCH=0 -I”..\..\include” -I”..\..\include\QtCore” -I”..\..\include\QtCore\5.8.0″ -I”..\..\include\QtCore\5.8.0\QtCore” -I”c:\DATA\qt-everywhere-opensource-src-5.8.0\qtbase\tools\shared” -I”c:\DATA\qt-everywhere-opensource-src-5.8.0\qtbase\mkspecs\win32-msvc2012″ -Fpconfigure_pch.pch -Foconfigure_pch.obj -TP c:\DATA\qt-everywhere-opensource-src-5.8.0\qtbase\tools\configure\configure_pch.h
configure_pch.h
c:\data\qt-everywhere-opensource-src-5.8.0\qtbase\include\qtcore\../../src/corelib/tools/qalgorithms.h(593): error C3615: constexpr 函数 “QAlgorithmsPrivate::qt_builtin_ctz” 不会生成常数表达式
c:\data\qt-everywhere-opensource-src-5.8.0\qtbase\include\qtcore\../../src/corelib/tools/qalgorithms.h(595): note: 未初 始化的变量声明导致出现故障

younky says:

anyone tried to build it with VS2017? I have an build error when run configure. It saids the constexpr can’t generate the const expression which stops the configure process.

With VS2015 it is ok.

Gunnar Roth says:

Try the patch from http://pastebin.com/2Fx1F5C3. The Qt company has a strange notion of “initial support” (as mentioned in the changelog) not including compilability.

younky says:

Thanks, let me try that.

Algirdas says:

Super. Good job guys.

Stun says:

Thanks you for this new release. Is there some news for dynamic linking on iOS target?

Tor Arne says:

Stay tuned for some more info on this in the coming week.

marco says:

Are you saying that you will have samples to build IOS dynamic linking and Android dynamic linking?

marco says:

It would be also very helpful for your sample and information to include how to run deployqtosx and deployqtwin so the deployment is also successful after building the new kit.

marco says:

We are waiting!

ETA?

Jake Petroules Jake Petroules says:

Dynamic linking is coming to iOS, tvOS, and watchOS ports of Qt in the 5.9 release and will be the default option if everything goes smoothly by release time. See http://blog.qt.io/blog/2017/01/30/whats-new-in-qt-on-apple-platforms/ for more information.

Ionut Dediu says:

What about advertisements (e.g. AdMob plugins)? It would be great for independent developers to have an easy way to monetize their apps through ads, but currently there is NO support for this in Qt. There was a time, back in 4.6/Nokia days when there was a solution for this, but nothing at the moment.

Arun Pk says:

Great Job…
Is there any plan for Json support in QML for the upcoming release?

Kai Koehne Kai Koehne says:

What do you expect from a ‘JSON support in QML’ (that is not already covered by JSON.parse)?

You should create a suggestion with your use case at bugreports.qt.io .

Sander says:

Still no fix for https://bugreports.qt.io/browse/QTBUG-46298 unfortunately 🙁

ZLB says:

Am I missing something or is Qt WebView missing from the Windows builds?

Kai Koehne Kai Koehne says:

Qt WebView uses Qt WebEngine as a backend on Windows, and Qt WebEngine is only available on MSVC 2015.

ZLB says:

Ah! Yes, you are right!

I was running the VS2015 build of 5.7.1 on my dev system but only 2013 on the system I upgraded to try out 5.8.

Thanks.

mattf06 says:

What does it means, WebEngine will not available with MSVC 2013?

Kai Koehne Kai Koehne says:

Correct. Chromium requires MSVC 2015 since a while on Windows, and fixing that for Qt WebEngine would be an uphill battle.

younky says:

Anyone succeeded build it on Windows 10 with VS2017? I encounter a problem of building the text to speech module where it includes “sphelper.h”, and sphelper.h includes atlbase.h which doesn’t exist on my system.

I have Windows 10 with VS2017 enterprise edition installed. I think this is the windows SDK issue, but is there an workaround I can use to make the QT build successful?

Gunnar Roth says:

atlbase.h comes with visual studio 2017, but you need to explicitly activate ATL/MFC in the installer.

younky says:

Thanks, let me try to reinstall VS2017 and see whether it works. But it doesn’t make sense that Windows SDK depends on ATL or MFC

AlGrenadine says:

Hi,
Can we get more informations on QML caching please ?
What happens when a QML file is updated, how is it detected by the caching system ?
Do caches have to be manually updated ?

Gunnar Roth says:

Afaik the cached qml file contains a checksum of the original qml and the qml dll. if any of this changes it will be discarded.

Simon says:

Basically Gunnar is correct. We look at the time stamp of the source file and compare it with the time stamp we had when the cache file was created (so the cache file data structure contains the time stamp of the original file). If there’s a difference, we’ll re-create the cache file. In addition there are various other checks that result in the cache file being re-created if the architecture differs, the Qt version changes or an internal version field is bumped for example. So no manual intervention should be needed.

Sandro F says:

What I also want to know regarding QML file caching: Is there a still performance boost if I already use Qt Quick Compiler?

@Sandro F: The Qt Quick Compiler (commercial only in Qt 5.8) is for ahead of time compilation. It will make already the first run fast, with caching the benefits are from second run onwards.

ekke ekke says:

does this mean if Qt Quick Compiler is in use, the new caching will be ignored ? Or do they both work together.

Pierre says:

When you write “Qt Bluetooth gains BTLE Peripheral support on macOS and iOS as well as BTLE Central support on WinRT.”, you mean that now QT supports BTLE on WinRT which enables its use on Windows 10 touchpad, am I right ?
Or do I have to wait for a future version to have the compatibility on Windows 10 touchpad (I don’t speek about Windows 10 computer compatibility, only use on touchpad).

Thanks for the precision.

Chris V says:

Thanks guys!!

Building 5.8.0 from source on MacOS Sierra. Here’s what I get when doing “./configure; make”:

[0126/034426:FATAL:icu_util.cc(101)] Check failed: path_ok.
0 qwebengine_convert_dict 0x000000010649098e _ZN4base5debug10StackTraceC2Ev + 30
1 qwebengine_convert_dict 0x00000001064909f5 _ZN4base5debug10StackTraceC1Ev + 21
2 qwebengine_convert_dict 0x00000001064a16f0 _ZN7logging10LogMessageD2Ev + 80
3 qwebengine_convert_dict 0x000000010649f5f5 _ZN7logging10LogMessageD1Ev + 21
4 qwebengine_convert_dict 0x000000010655bd68 _ZN4base4i18n12_GLOBAL__N_119LazyInitIcuDataFileEv + 264
5 qwebengine_convert_dict 0x000000010655bc09 _ZN4base4i18n13InitializeICUEv + 233
6 qwebengine_convert_dict 0x000000010647bc7d main + 349
7 qwebengine_convert_dict 0x000000010647bb14 start + 52

make[3]: *** [qtwebengine_dictionaries/en-US.bdic] Trace/BPT trap: 5
make[2]: *** [sub-webenginewidgets-spellchecker-make_first] Error 2
make[1]: *** [sub-examples-make_first] Error 2
make: *** [module-qtwebengine-make_first] Error 2

5.7.1 built with no problems. Any ideas?

Chris

Kai Koehne Kai Koehne says:

Did the build generate an icudtl.dat file?

Anyway, please use the bug tracker to report issues: bugreports.qt.io

marco says:

Chris:

I just got done building your config line on El Capitan 10.11.5:

/macdev/qt580/5.8/Src/configure -prefix /macdev/qt580/5.8/osx \
-verbose \
-opensource \
-release \
-strip \
-debug-and-release \
-c++std c++11 \
-confirm-license \
-reduce-exports \
-opensource \
-nomake tests \
-nomake examples

Kai, the biggest problem are the dependencies. How to decide how to cut out a chunk of unnecessary code and still make sure the build process does not die with a dependency that was also not cut out.

Too many build errors and time wasted with trial & error.

Chris V says:

Thanks! I’ll try when I’m back.

IPeculiar says:

Great Work Thanks !!
Is Qt Webengine supported in android ? if not when it will be ?

Kai Koehne Kai Koehne says:

We don’t have any concrete plans to support Qt WebEngine on Android. The alternative is to use Qt WebView, which wraps the native browser. Anyhow, if you have a compelling use case to use Qt WebEngine on Android please consider filing it on the bugtracker.

Srinivasan.B says:

I have problem compiling QT5.8 with MingW 64bit compiler (TDM GCC version 5.1). I get the following error

qwin10helpers.cpp:60:37: fatal error: UIViewSettingsInterop.h: No such file or directory. I use the following configuration option
configure -prefix “D:\Qt\Qt580” -debug-and-release -opensource -shared -opengl desktop -nomake examples -nomake tests -skip qtwebengine.

Any help would be greatly appreciated.

Adrian Gabureanu says:

Congratulations for the release! And special thanks for those who have worked on the WinRT port, especially on the WinRT backend for Qt Purchasing.

Now I can start to port all of my apps to Windows 10 and publish them on the Windows Store.

Samuel says:

@Srinivasan: You need to install W10 SDK 10586. There is a test in qtwebengine/tools/qmake/mkspecs/features/functions.prf, but it’s not always working:
https://bugreports.qt.io/browse/QTBUG-54177

naviialto says:

thanks release.

i need support windows xp.
but I can not found the “-target xp” option in configure.

Kai Koehne Kai Koehne says:

Windows XP isn’t supported anymore as a target since Qt 5.7. If you need to continue supporting Windows XP, you must unfortunately stay with Qt 5.6.

Mike says:

Does Qt Speech depends on MFC?

kevin cheng says:

Congratulation !
Being a mobile app developer…..
(1) My most required Qt’s wish is not adding any functions, but simplying the solution file for ios and android developing.
(2) The .pro file is too strong, BUT at the same time, it is so hard to learn, and too easy to make mistakes.
(3) Just like xamarin solution, the .pro file can be seperated to 3 kinds files:
– Solution file : Manages all projects
– Project file : Defines each projects for mobile, common lib, etc. And define the project rely information.
– Command codes : Defines the command codes when compiling.
(4) So, the new solution structure may be below:
app.solution : Contains projects file and compile commands(file).
app.project : Contains the common file, such as qml, lib, framework…
app-ios.project : Contains ios special file, such as info.plist, ios platform special codes…
app-android.project : Contains android special file, such as manifest xml file, android platform special codes….

Thank you for consideration!

kevin cheng says:

Thank you for hard working !
It’s my suggestiones for Qt/Qml:

(1) Simply the solution/projects structure.

(2) Simply the qml element creation. We need:
var bolck = new Rectangle{…….};

(3) Force strong type qml compile:
– Qml is strong type language, but Js is not. It’s hard to find errors while qml compile.
– So can we make strong type compile? Any variables’s type should be explicit declared.
– The .js file may be rename to .qjs file, and it needs strong type when define variables.

Thank you for consideration!

Commenting closed.

Get started today with Qt Download now