Настроить netbeans 8.0 gdb для работы с gradle плагином cpp

В последнее время я переключился с Visual Studio в Windows 7 на Ubuntu с Netbeans 8.0 (С++). С этого времени у меня есть большая проблема с отладкой моего приложения из NetBeans (gdb работает отлично). Я написал привет мир С++ с gradle, чтобы продемонстрировать свою проблему. Я провел много времени, но без какого-либо значительного прогресса.

Gradle проект

build.gradle

apply plugin: 'cpp'

executables {
    helloWorld
}
binaries.all {
     cppCompiler.args "-g"
}

main.cpp:

#include <stdio.h>
#include <stdlib.h>

int main(void) {
    int a = 10;
    int b = 12;
    int c = a + b;
    puts("Hello World!!!");
    return EXIT_SUCCESS;
}

Затем я создаю и запускаю gdb:

robert-Aspire-S3:~/NetBeansProjects/helloWorld$ gradle helloWorldExecutable
robert-Aspire-S3:~/NetBeansProjects/helloWorld$ gdb ./build/binaries/helloWorldExecutable/helloWorld                     
....
Reading symbols from ./build/binaries/helloWorldExecutable/helloWorld...done.
(gdb) b 5
Breakpoint 1, main () at /home/robert/NetBeansProjects/helloWorld/src/helloWorld/cpp/main.cpp:5
5           int a = 10;
(gdb) n                                                                                                                         
6           int b = 12;
(gdb) print a
$1 = 10
(gdb) n
7           int c = a + b;
(gdb) c
Continuing.
Hello World!!!
[Inferior 1 (process 3693) exited normally]

Следующий шаг был присоединен к процессу gdb от Netbeans 8.0. Я также поставил точку останова в NetBeans в 5-й строке, надеясь, что получу выход gdb. Attaching gdbBreakpoint from NetBeans

К сожалению, Netbeans не попадает в точку останова в области редактора, и я не знаю, почему. Я также открыл консоль Debbuger, и я добавил logs (pastebin) для получения дополнительной информации.

Приложение С++

Когда я создал стандартное приложение C/С++ Application из мастера NetBeans и попробовал отлаживать, все работает хорошо. Cpp debugger

Для этого сеанса я также загружать журналы.

Я нашел одно различие в журналах:

  • Gradle cpp: 10-file-symbol-file "/usr/bin/gdb"
  • NetBeans cpp: 10-file-exec-and-symbols "/home/robert/NetBeansProjects/CppApplication_1/dist/Debug/GNU-Linux-x86/cppapplication_1"

Итак, это проблема с одной строкой с gradle? Если да, как я могу это исправить? Может ли кто-нибудь помочь мне с прикрепленным визуальным отладчиком NetBeans до gradle проектов cpp? Спасибо за помощь.

Ответ 1

Я думаю, проблема в build.gradle, поэтому вы должны проверить синтаксисы, используемые в программе gradle. http://gradle.org/getting-started-native/ этот сайт содержит некоторые примеры. Прочтите это, исправьте свою проблему.