diff --git a/src/plugins/debugger/debuggerkitinformation.cpp b/src/plugins/debugger/debuggerkitinformation.cpp index 8d4cd6299a5..5bc634fed84 100644 --- a/src/plugins/debugger/debuggerkitinformation.cpp +++ b/src/plugins/debugger/debuggerkitinformation.cpp @@ -59,14 +59,20 @@ DebuggerKitInformation::DebuggerKitInformation() QVariant DebuggerKitInformation::defaultValue(const Kit *k) const { const Abi toolChainAbi = ToolChainKitInformation::targetAbi(k); + const QStringList paths = Environment::systemEnvironment().path(); + QVariant nextBestFit; foreach (const DebuggerItem &item, DebuggerItemManager::debuggers()) { foreach (const Abi targetAbi, item.abis()) { - if (targetAbi.isCompatibleWith(toolChainAbi)) - return item.id(); + if (targetAbi.isCompatibleWith(toolChainAbi)) { + if (paths.contains(item.command().toFileInfo().absolutePath())) + return item.id(); // prefer debuggers found in PATH over those found elsewhere + if (nextBestFit.isNull()) + nextBestFit = item.id(); + } } } - return QVariant(); + return nextBestFit; } void DebuggerKitInformation::setup(Kit *k)