[英]Why doesn't Netbeans stop at my breakpoints?
我使用現有源和 Makefile 在 Netbeans 8.0.1 上創建了一個Makefile
項目。
我運行了運行Makefile
的構建,並構建了名為a.out
的可執行文件。
問題是,當我在 IDE 中設置斷點時,它不會在那里暫停。
問題是什么?
該站點上的其他問題均未解決該問題。
Makefile:
CC=g++
build: foo.cpp foo.h main.cpp
$(CC) foo.cpp foo.h main.cpp
我有時也遇到這個問題。 有幾種可能的解決方案:
-g
在構建時是編譯器命令的一部分(默認情況下應為-g
,但必須仔細檢查,尤其是因為您似乎正在使用自己的Makefile)。 gdb
,而不是通過NetBeans GUI使用。 以我的經驗, gdb
總是可以工作,但是NetBeans調試不可靠,有時由於我不知道的原因而出現問題。 由於這個原因,我主要使用良好的舊命令行調試器。 -g選項是第一件事-確保在編譯行中。 如果仍然不起作用,則直接運行gdb以查看它是否起作用。 如果有問題,gdb會吐出一個錯誤或警告,當通過netbeans運行它時可能會掩蓋它。 例如:
gdb <progname>
並設置一個斷點,例如
(gdb) break main
然后運行它:
(gdb) run
如果它在第一個語句上沒有問題,但在netbeans中沒有問題,則其他問題是錯誤的。 但是如果它運行到最后並發出警告,例如此。 缺少包裹:
Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.149.el6.x86_64
然后按照它告訴你的去做。 一旦gdb感到滿意,netbeans也應該如此。
對於我來說,NetBeans 沒有檢測到它是項目屬性中的錯誤屬性值。 我將我的項目構建設置為“調試”,但在“構建”>“C++ 編譯器”>“開發模式”中,該值設置為“發布”。 那是我編輯屬性的錯。 通過將其改回“調試”,問題就解決了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.