I have been successfully using Qt 5.8 (from qt-opensource-windows-x86-msvc2015-5.8.0.exe) for several years.
I fear that later versions of Qt will not become available in the future. For example, www.qt.io/download no longer contains links to pre-compiled versions (such as qt-opensource-windows-x86-msvc2015-5.8.0.exe)
So, I decided to attempt to build Qt from source on Windows.
I have successfully built many versions of Qt on Linux in the past, but I have never been able to build Qt on Windows.
I am NOT able to build and install Qt 5.11.2 open source on Windows/MSVC 2015 due to problems with the QWebEngine compile failing. The QWebEngine compile absolutely requires a 64bit linker.
So after much research I came to the conclusion that I needed to obtain MSVC2017 to get a build to work.
Through much trial and error I found that the source and destination paths MUST be very short or I get "Path too long" build errors.
But, I now have been able to build and install Qt 5.11.2 open source on Windows/MSVC 2017 using a 64_86 Visual Studio command prompt.
I am able to create a new GUI project that builds and runs with it.
But although I can also compile my huge existing code base, none of the applications run due to problems with DLL's (they load and immediately unload)
I suspect problems with 64 vs 32 bit exec/dlls but cannot find any obvious issue. Depends shows several Windows 64 bit DLLs.
NOTE: I require 32 bit executables due to hardware vendors only providing 32 bit driver interfaces.
Here is the configure command used (where BUILD_INSTALL_DIR is 5.11.2:
..\qt5\configure -prefix C:\Qt\%BUILD_INSTALL_DIR% -verbose -debug-and-release -opensource -confirm-license -icu -opengl desktop -shared -plugin-sql-mysql -nomake examples -nomake tests -platform win32-msvc2017 -openssl-linked OPENSSL_LIBS="-lssleay32 -llibeay32" -I C:\openssl\include -L C:\openssl\lib -I C:\MySQL\include -L C:\MySQL\lib ICU_PREFIX=C:\ICU -I C:\ICU\include -L C:\ICU\lib
Are there new requirements for the project files? I looked at the test GUI project file and did not see anything special that is not in my project files.
Any suggestions for further investigation would be appreciated


Reply With Quote



Bookmarks