You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在CLion 2022.2.4中开启Valgrind的代码行定位显示?

WSL下CLion 2022.2.4 Valgrind无法显示问题代码行的解决办法
  • 确保编译时生成完整调试信息

    • 在项目的CMakeLists.txt中添加set(CMAKE_BUILD_TYPE Debug),或者在CLion的Build Configuration面板中,将Build Type设置为Debug。Release模式默认会剥离调试符号,导致Valgrind无法关联到代码行。
    • 确认编译选项中包含-g参数(Debug模式默认自动添加,若手动修改过编译配置需检查未被移除)。
  • 正确配置CLion的Valgrind参数

    • 打开CLion设置(File -> Settings),进入Build, Execution, Deployment -> Valgrind。
    • 确保Valgrind路径指向WSL内的正确位置,例如/usr/bin/valgrind,不要使用Windows本地路径。
    • 检查Valgrind启动参数,移除--no-debuginfo这类禁用调试信息的选项,保留默认的调试符号解析设置。
  • 更新WSL内的Valgrind及依赖

    • 在WSL终端执行valgrind --version,若版本低于3.18,建议通过包管理器更新(如Ubuntu/Debian系执行sudo apt update && sudo apt install valgrind),旧版本对新编译器生成的调试符号支持有限。
    • 安装系统库调试符号包,例如sudo apt install libc6-dbg(针对Debian/Ubuntu),这有助于解析系统调用栈的关联代码。
  • 重新构建并运行分析

    • 先执行Build -> Clean Project清理旧构建产物,再执行Build -> Rebuild Project重新生成带调试符号的二进制文件。
    • 重启Valgrind分析任务,确保使用最新的构建结果。
  • 验证CLion的WSL工具链配置

    • 进入Settings -> Build, Execution, Deployment -> Toolchains,确认WSL工具链为默认选中项,且gcc、g++、cmake等工具均能被正常检测到。
    • 确保本地代码与WSL内的同步目录一致,避免路径映射错误导致代码行无法关联。

内容的提问来源于stack exchange,提问作者Jager72

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 01:55:32