debugging CodeLite调试器是否立即关闭?

wqsoz72f  于 2022-11-14  发布在  其他
关注(0)|答案(4)|浏览(252)

问题:弹出空白的cmd窗口并在一秒钟内关闭。
日志:-

C:\Windows\system32\cmd.exe /C C:/TDM-GCC-64/bin/mingw32-make.exe -j4 SHELL=cmd.exe -e -f  Makefile
"----------Building project:[ Test - Debug ]----------"
mingw32-make.exe[1]: Entering directory 'C:/Users/< User >/Documents/Varun/Test'
C:/TDM-GCC-64/bin/g++.exe -o ./Debug/Test @"Test.txt" -L.
mingw32-make.exe[1]: Leaving directory 'C:/Users/< User >/Documents/Varun/Test'
"----------Building project:[ Test2 - Debug ]----------"
mingw32-make.exe[1]: Entering directory 'C:/Users/< User >/Documents/Varun/Test2'
C:/TDM-GCC-64/bin/g++.exe -o ./Debug/Test2 @"Test2.txt" -L.
mingw32-make.exe[1]: Leaving directory 'C:/Users/< User >/Documents/Varun/Test2'
====0 errors, 0 warnings====

我尝试调试Test 2的main.cpp。我甚至用hello world程序打开了一个新项目,添加了断点,做了加法,并尝试调试,但我的调试器只是关闭了。

wmomyfyw

wmomyfyw1#

当您使用eclipse时,问题是相同的。
“IDE”需要知道什么是检查点(作为主线程),如果你把一个检查点放在一级以下,方法将不起作用。
如何解决此问题?您需要检查高级检查点来解决此问题。
例如,当您使用IDE时,您需要检查

Here will not work correctly : 

 method()
   method()  
      method()
         method()
           method()
              ......  method()   // if you only check Here will not work correctly

 Here will work correctly :    

 method() // You need check here "Here is the main thread"
   method()  // and here
      method()// and here
         method()// and here
           method()// and here
              ......  method()   // and here

请记住,通常您需要在“运行”之前检查断点,因为IDE需要创建previus结构,如果不这样做,将从该点经过更多的时间。

i5desfxk

i5desfxk2#

我选择了Debugger-〉Delete All Breakpoints。然后添加了我的断点,现在问题似乎被修复了。
奇怪的是,我能够重现这个错误,我只需要在这个工作目录中的任何其他项目中有一个断点。

p3rjfoxz

p3rjfoxz3#

截至2018年9月,我在CodeLite上看到了这个问题,我可以确认这个问题。解决方案是删除所有断点并继续。其他程序中的断点导致了这个问题。
在开始调试当前项目之前,请转到
调试器**-〉**删除所有断点。
完成后,调试器开始工作,可以在当前项目中添加断点并进行调试。

6xfqseft

6xfqseft4#

这可能是权限问题。我会公开我的案例,但您可以跳到我的想法。
"我的案子"
我不得不从源代码安装codelite(说来话长),并最终搞乱了一些东西,在某种程度上,当运行与根特权,codelite工作得很好,但当试图运行从一个非特权用户,它开始吃内存,然后交换,等等,直到无穷大。
我试着将文件夹/root/.codelite复制到/home/$USER/.codelite,我解决了崩溃问题,但我无法调试。无论我在哪里添加断点或添加多少断点,调试器都会跳过它们。除此之外,我修改的配置似乎都不是持久的(主题,窗口,甚至项目在重新启动时都消失了),这让我意识到我已经从root复制了文件夹,保留了它的权限。
/home/$USER/.codelite权限的改变解决了持久性和调试问题。如果你有一个由root拥有的/home/$USER/.codelite文件夹(就像我的情况一样),我怀疑这一点,但随后的修复是ez:
sudo chown -R $USER /home/$USER/.codelite
"我的主意"
如果(如果)用root权限安装codelite(如sudo apt install codelite)配置codelite使用/root/.codelite文件夹,但当您从普通用户启动codelite时,它无法在那里写入,这就是为什么您无法调试的原因,该怎么办?
如果使用sudo从终端启动codelite,是否可以进行调试?
如果可以,我不知道如何解决整个安装问题(codelite应该使用您的/home中的.codelite文件夹),但如果它与sudo一起工作,那么您就有了它。

相关问题