Qt5.15.0 with Visual Studio 2017 - where is msvc2017_64
-
Hi there.
Currently, I work with Qt5.12 and compile my CMake / C++ application in Visual Studio 2017. For the "Open Folder" feature, I define my environment within the CMakeSetting.json as follows:
"environments": [ { "BOOST_ROOT": "D:\\Downloads\\boost_1_72_0", "QTDIR": "D:\\Downloads\\Qt\\5.12.5\\msvc2017_64", "CMAKE_PREFIX_PATH": "${env.QTDIR}\\lib\\cmake" } ], ...
This works great, everything runs smoothly.
Unfortunately, Qt5.15.0 does not provide msvc2017_64. Instead the maintenance tool lets me choose between "MSVC 2015 64-bit" and "MSVC 2019 64-bit". The former does not come with WebEngine, the latter requires new redistributables (providing vcruntime140_1.dll) but lacks debugging support as vcruntime140_1d.dll is missing.
Please, could you tell me how to ust Qt5.15 within VS2017? From my point of view providing "MSVC 2017 64-bit", as in the past, would solve this problem. Preferably I would change the QTDIR line to
"QTDIR": "D:\\Downloads\\Qt\\5.15.0\\msvc2017_64",
The release note mentions easily upgrade your ongoing projects and fully backward-compatible with previous Qt 5 releases , so I guess there must be a way to solve this.
BR,
Andreas -
Hi, I see that the MSVC2017_64 repos are being commented out in the online installer xml.
From the release blog, there're comments saying that "2017 and 2019 are binary compatible. You don't need a 2017 version."
Maybe that is the reason?
[EDITED]
Also find this: https://bugreports.qt.io/browse/QTBUG-84559
The official reply is:MSVC2017 packages has been replaced with MSVC2019 ones in Qt 5.15 LTS. Those are binary compatible so anyone should be possible to do the same & use MSVC2019 instead
And when I installed 5.15.0 from online installer several days ago, there was mingw73 versions, but now they are gone too!
-
@Bonnie They are not.
There is no such thing as binary compatibility "with MSVS". Microsoft platform doesn't operate by that principle. They use Side-by-side installation meaning if you compiled a binary with another version of SxS library (identified by embedded hash), you have to provide distribution for them.
Debug mode libraries aren't redestributable, they can be installed only as a part of Software Developer Kit.
MSVC2019 version of binaries work and compiled program can be run in Debug mode ONLY if aprorpriate new SDK is installed. Which, in case of 2019 build oq Qt, is not part of MSVC 2017 installation or updates.
Sometimes SDK update were coming within context of same IDE. They come with updated libraries - for each each targetredistributable platform you need to compile anew. Or you have to stay using old runtime.
Moreof, if SDK is updated in such way, that an older version of SxS library is blocked by an update (there were precedents before, for security reasons), all products using these verisons MUST be updated, no workaraound possible.
-
@Go-Fish said in Qt5.15.0 with Visual Studio 2017 - where is msvc2017_64:
They are not.
There is no such thing as binary compatibility "with MSVS". Microsoft platform doesn't operate by that principle. They use Side-by-side installation meaning if you compiled a binary with another version of SxS library (identified by embedded hash), you have to provide distribution for them.Nice that someone registered here just to spread fud / showing that he doesn't know what binary compatibility means:
https://learn.microsoft.com/en-us/cpp/porting/binary-compat-2015-2017?view=msvc-170