小编use*_*158的帖子

如何使用 CMake 在没有优化的情况下进行编译 -O0

我正在使用Scientific Linux (SL)。我正在尝试编译一个使用一堆 C++ (.cpp) 文件的项目。

在目录中user/project/Build,我输入make以编译和链接所有 .cpp 文件。然后我必须去user/run/然后输入./run.sh values.txt

要使用 GDB 进行调试,我必须转到user/run然后键入gdb ../project/Build/bin/Project并运行,我输入run -Project INPUT/inputfile.txt. 但是,我正在尝试使用p variablename.

但是,我收到了消息s1 = <value optimized out>。我在网上做了一些研究,似乎我需要在没有优化的情况下编译-O0来解决这个问题。但是我在哪里输入呢?在CMakeLists?如果是这样,哪些 CMakeLists ?在project/Buildproject/src/project?

debugging gdb cmake optimization

20
推荐指数
3
解决办法
5万
查看次数

gdb 总是程序退出,代码为 01

我正在使用科学的 linux。我正在尝试编译一个使用一堆 cpp 文件的项目。现在,它编译成功,但我得到的值/数据肯定是错误的。

在目录中user/project/Build,我输入 make 来编译和链接所有的 cpp 文件。然后我必须去user/run/然后输入./run.sh values.txt

当我转到目录/user/project/Build/bin然后键入gdb project然后设置断点时,没有问题。但是当我点击运行时,我总是看到Program exited with code 01。如果我在 main.cpp 或其他源文件中设置断点并不重要。gdb 不是应该停在断点处吗?

gdb

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

gdb ×2

cmake ×1

debugging ×1

optimization ×1