如果在使用CMake生成Makefile并通过NMake Makefiles
生成项目后,使用gdb
调试时提示”No debugging symbols found”错误,这可能是因为编译时没有包含调试符号。
要确保调试符号被正确地包含在可执行文件中,可以尝试以下步骤:
确保在使用CMake构建项目时已经设置了调试模式。使用命令
cmake -DCMAKE_BUILD_TYPE=Debug -G "NMake Makefiles" ..
来指定Debug模式构建。确认CMakeLists.txt中的相关配置是否正确。上面提供的示例代码片段已经包含了启用调试符号和禁用优化的选项。
如果步骤1和2都正确配置了,但仍然没有找到调试符号,那么可能是由于其他原因导致未生成或丢失了调试符号。请检查编译过程中是否有任何警告或错误信息,并确保编译器正在生成调试符号。
可以尝试清理重新构建整个项目。首先删除先前构建的目录,然后重新运行CMake命令和构建命令进行重新构建。
在执行
gdb ./gmssl.exe
之前,请确认你正在运行Debug版本的可执行文件而不是Release版本。确保路径指向正确的可执行文件。
如果问题仍然存在,请进一步检查CMake及编译环境的配置,并确保编译器正确生成调试符号。
内容由零声教学AI助手提供,问题来源于学员提问