diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp
index 708ebdb551bb3e82eb66fb9038247fd2534ebb1e..26bd43ce6d8e8bba781910c3c0677add53ac7ccf 100644
--- a/src/plugins/debugger/gdb/gdbengine.cpp
+++ b/src/plugins/debugger/gdb/gdbengine.cpp
@@ -3939,10 +3939,10 @@ bool GdbEngine::startGdb(const QStringList &args, const QString &gdb, const QStr
     gdbProc()->disconnect(); // From any previous runs
 
     m_gdb = QString::fromLocal8Bit(qgetenv("QTC_DEBUGGER_PATH"));
-    if (m_gdb.isEmpty())
-        m_gdb = gdbBinaryForToolChain(startParameters().toolChainType);
     if (m_gdb.isEmpty())
         m_gdb = gdb;
+    if (m_gdb.isEmpty())
+        m_gdb = gdbBinaryForToolChain(startParameters().toolChainType);
     if (m_gdb.isEmpty()) {
         handleAdapterStartFailed(
             msgNoBinaryForToolChain(startParameters().toolChainType),