void LocalPlainGdbAdapter::checkForReleaseBuild(){ // Quick check for a "release" build QProcess proc; QStringList args; args.append(_("-h")); args.append(_("-j")); args.append(_(".debug_info")); args.append(startParameters().executable); proc.start(_("objdump"), args); proc.closeWriteChannel(); if (!proc.waitForStarted()) { showMessage(_("OBJDUMP PROCESS COULD NOT BE STARTED. " "RELEASE BUILD CHECK WILL FAIL")); return; } proc.waitForFinished(); QByteArray ba = proc.readAllStandardOutput(); // This should yield something like // "debuggertest: file format elf32-i386\n\n" // "Sections:\nIdx Name Size VMA LMA File off Algn\n" // "30 .debug_info 00087d36 00000000 00000000 0006bbd5 2**0\n" // " CONTENTS, READONLY, DEBUGGING" if (ba.contains("Sections:") && !ba.contains(".debug_info")) { showMessageBox(QMessageBox::Information, "Warning", tr("This does not seem to be a \"Debug\" build.\n" "Setting breakpoints by file name and line number may fail.")); }}