diff --git a/src/plugins/debugger/gdb/remotegdbserveradapter.cpp b/src/plugins/debugger/gdb/remotegdbserveradapter.cpp
index daf20e3df0a3d8226197faa05390d81cb07d9eac..174fbb90691c954491d56f1263dffa3b5ec3c186 100644
--- a/src/plugins/debugger/gdb/remotegdbserveradapter.cpp
+++ b/src/plugins/debugger/gdb/remotegdbserveradapter.cpp
@@ -233,9 +233,16 @@ void RemoteGdbServerAdapter::handleFileExecAndSymbols(const GdbResponse &respons
     if (response.resultClass == GdbResultDone) {
         callTargetRemote();
     } else {
+        QByteArray reason = response.data.findChild("msg").data();
         QString msg = tr("Reading debug information failed:\n");
-        msg += QString::fromLocal8Bit(response.data.findChild("msg").data());
-        m_engine->notifyInferiorSetupFailed(msg);
+        msg += QString::fromLocal8Bit(reason);
+        if (reason.endsWith("No such file or directory.")) {
+            showMessage(_("INFERIOR STARTUP: BINARY NOT FOUND"));
+            showMessage(msg, StatusBar);
+            callTargetRemote(); // Proceed nevertheless.
+        } else {
+            m_engine->notifyInferiorSetupFailed(msg);
+        }
     }
 }