From 15487863ace50150f04b3a87edd3a319af0de3b5 Mon Sep 17 00:00:00 2001 From: Cristian Adam Date: Tue, 9 Feb 2021 13:13:22 +0100 Subject: ProjectExplorer: Use canonical paths for compiler toolchain match On Linux (Ubuntu 20.04) Qt Creator would use /usr/bin/g++ as compiler for C++. CMake would pick /usr/bin/c++ as C++ compiler. Both of them are symlinks to /usr/bin/x86_64-linux-gnu-g++-9 ammends 4ae5516453e86b64326e61b14603ed1508aeb319 Change-Id: Id50cb47ed4e728541baed6a191435f2ad0137628 Reviewed-by: Eike Ziller Reviewed-by: Christian Kandeler --- src/plugins/projectexplorer/projectimporter.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/plugins/projectexplorer/projectimporter.cpp b/src/plugins/projectexplorer/projectimporter.cpp index 73fe4d1c0b..cd5ee7e311 100644 --- a/src/plugins/projectexplorer/projectimporter.cpp +++ b/src/plugins/projectexplorer/projectimporter.cpp @@ -38,6 +38,7 @@ #include #include +#include #include #include @@ -394,7 +395,9 @@ ProjectImporter::findOrCreateToolChains(const ToolChainDescription &tcd) const { ToolChainData result; result.tcs = ToolChainManager::toolChains([&tcd](const ToolChain *tc) { - return tc->language() == tcd.language && tc->compilerCommand() == tcd.compilerPath; + return tc->language() == tcd.language && + Utils::Environment::systemEnvironment().isSameExecutable( + tc->compilerCommand().toString(), tcd.compilerPath.toString()); }); for (const ToolChain *tc : result.tcs) { const QByteArray tcId = tc->id(); -- cgit v1.2.1