像在命令行中一样在Code::块中编译
Compile in Code::Blocks like in command line
我正在尝试为同事测试一个不是在IDE中编写的程序。当我们运行它的时候,有些地方出了问题,我们花了很长时间试图找出它是什么。
我有了一个聪明的想法,在code::Blocks中编译和运行代码(就像我们在ubuntu中运行它一样),这样我们就可以看到它在运行时在内部做什么。当您输入:
时,代码将编译g++ fe_cmd_arg2_new.c -pthread K_drv_21.cc urg_drv_425.cc o_structures.c ri,cc star_cam_374.cpp com_Unit.o
,而不是在Code::Blocks中编译时。我如何像在命令行上那样在Code::块中编译?
哎呀,忽略了主要问题:如何编译as-in代码块。这可能只是添加-g
来构建调试符号,加上可能的-O2
来优化代码。但如果你正在调试它可能会帮助离开优化开关。
但是,除非你能够在IDE中调试,否则你可以尝试gdb调试器:
- 将
-g
添加到您的编译行中以构建调试符号(如果您正在编译和单独链接,则到所有行,包括链接行) -
使用gdb
运行程序gdb ./a.out run <command line args>
不幸的是gdb是命令行,很难接近,但你应该尝试bt
打印堆栈跟踪,然后你可以print <var>
转储状态,等等
相关文章:
- "throw expression code" 1e7 >返回 d 是什么?投掷标准::overflow_error( "too big" ) : d;意味 着?
- Visual Studio Code - C++ Debugger 無法啟動
- Visual Studio Code "undefined reference to `WinMain@16'"
- VS Code "command":"make"与终端窗口中的命令行"make"不同
- 使用VS Code和CMake Tools运行自定义命令
- 修改 VS Code 中的默认C++代码段
- 如何将不同的可执行文件合并到一个窗口框架中进行编码?像浏览器一样
- 为什么在C++中对链表这样做?(像堆叠一样处理它们)
- 堆栈和队列是否像C++中的数组一样传递?
- 如何配置Visual Studio Code以使用cygwin,cmake和gcc进行调试
- std::to_string - 'to_string' 不是 'std' 的成员 - Visual Studio Code 1.42.0
- 是否有技术原因阻止 Java 中的 final C++ 像 const 一样严格?
- VS Code C++:不准确的系统包括路径错误(wchar.h,boost/lambda/lambda.hpp)
- C++新手,想知道如何使用VS code 2019播放音频文件
- "Unable to start debugging. No process is associated with this object." - 在Visual Studio Code中使用GDB
- 如何在Visual Studio Code中重命名我的a.exe文件?
- C++ Visual Studio Code 的设置不起作用
- 访问数据成员(本身是对象)的数据成员,就好像它们是类成员一样
- 像在命令行中一样在Code::块中编译
- Can code:像xCode一样阻止自动完成文本