diff --git a/src/plugins/qtsupport/qtversionmanager.cpp b/src/plugins/qtsupport/qtversionmanager.cpp index fb08904f5c1..82d2fb9e2d4 100644 --- a/src/plugins/qtsupport/qtversionmanager.cpp +++ b/src/plugins/qtsupport/qtversionmanager.cpp @@ -39,6 +39,7 @@ #include #include +#include #include #include #include @@ -429,11 +430,16 @@ static void findSystemQt() { FilePaths systemQMakes = BuildableHelperLibrary::findQtsInEnvironment(Environment::systemEnvironment()); - systemQMakes.append(gatherQmakePathsFromQtChooser()); - - const FilePaths uniqueSystemQmakes = Utils::filteredUnique(systemQMakes); - for (const FilePath &qmakePath : uniqueSystemQmakes) { + for (const FilePath &qmakePath : qAsConst(systemQMakes)) { + if (BuildableHelperLibrary::isQtChooser(qmakePath.toFileInfo())) + continue; + const auto isSameQmake = [qmakePath](const BaseQtVersion *version) { + return Environment::systemEnvironment(). + isSameExecutable(qmakePath.toString(), version->qmakeCommand().toString()); + }; + if (contains(m_versions, isSameQmake)) + continue; BaseQtVersion *version = QtVersionFactory::createQtVersionFromQMakePath(qmakePath, false, "PATH");