vscode调试C++ python相关配置

settings.json

json 复制代码
{
    "cmake.sourceDirectory": "/workspace/KuiperLLama",
    "cmake.buildDirectory": "/workspace/KuiperLLama/vscode_build",
    "cmake.configureSettings": {
        "USE_CPM": "ON",
        "QWEN2_SUPPORT": "ON"
    },
    "testMate.cpp.test.executables":"/workspace/KuiperLLama/vscode_build/*/*",
    "testMate.cpp.test.workingDirectory": "${absDirpath}",
    "python-envs.defaultEnvManager": "ms-python.python:conda",
    "python-envs.defaultPackageManager": "ms-python.python:conda"
}

launch.json

json 复制代码
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "debug llama",
            "type": "cppdbg",
            // "type": "cuda-gdb",
            "request": "launch",
            "program": "/workspace/KuiperLLama/vscode_build/demo/llama_infer",
            // "program": "/workspace/KuiperLLama/build/demo/qwen_infer",
            "args": [
                // "/workspace/KuiperLLama/models/stories110M.bin",
                "/workspace/KuiperLLama/models/chat_myself_version0.bin",
                "/workspace/KuiperLLama/models/TinyLlama-1.1B-Chat-v1.0/tokenizer.model"
             ], // 可执行文件的命令行参数,如需要可添加
            //  "args": [
            //     // "/workspace/KuiperLLama/models/stories110M.bin",
            //     "/workspace/KuiperLLama/models/qwen25/Qwen2.5-0.5B_export0.bin",
            //     "/workspace/KuiperLLama/models/qwen25/Qwen2.5-0.5B/tokenizer.json"
            //  ], // 可执行文件的命令行参数,如需要可添加
            "stopAtEntry": false, // 是否在main函数入口暂停
            "cwd": "/workspace/KuiperLLama", // 工作目录,根据需要调整
            "environment": [], // 环境变量,例如 [{"name": "LD_LIBRARY_PATH", "value": "/usr/local/lib"}]
            "externalConsole": false, // 设为 true 可打开外部终端(已废弃,推荐用 integratedTerminal)
            "console": "integratedTerminal", // 推荐:在 VS Code 内部终端中运行
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "为 SIGINT 等信号启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设为 Intel",
                    "text": "set disassembly-flavor intel",
                    "ignoreFailures": true
                },
                {
                    "text": "-enable-pretty-printing\nskip -gfi /usr/include/c++/*/*/*\nskip -gfi /usr/include/c++/*/*\nskip -gfi /usr/include/c++/*\nskip -gfi /usr/local/include/gtest/*\nskip -gfi /workspace/KuiperLLama/vscode_build/_deps/*\nskip -gfi /workspace/KuiperLLama/vscode_build/_deps/*/*\nskip -gfi /workspace/KuiperLLama/vscode_build/_deps/*/*/*",
                    "ignoreFailures": true
                },
                {
                    "text": "-enable-pretty-printing\nskip -gfi /workspace/KuiperLLama/vscode_build/_deps/**",
                    "ignoreFailures": true
                }
            ],
            "miDebuggerPath": "/usr/bin/gdb"
            // "miDebuggerPath": "/usr/local/cuda/bin/cuda-gdb"
        },
        
        {
        "name": "Debug aaa",
        "type": "cppdbg",
        "request": "launch",

        "program": "/workspace/a_study/cpp/vscode_build/aaabbb",
        "args": [],
        "stopAtEntry": false,
        "cwd": "/workspace/a_study/cpp",
        "environment": [],
        "externalConsole": false,
        "MIMode": "gdb",
        "miDebuggerPath": "/usr/bin/gdb",

        "setupCommands": [
            {
            "description": "Enable pretty-printing",
            "text": "-enable-pretty-printing",
            "ignoreFailures": true
            }
        ]
        },

        {
        "name": "Debug CUDA (Nsight)",
        "type": "cuda-gdb",
        "request": "launch",
        "program": "/workspace/cuda_code/course2/reduce_smem",
        "miDebuggerPath": "/usr/local/cuda/bin/cuda-gdb",
        "env": {
            "CUDA_LAUNCH_BLOCKING": "1"
        },
        "setupCommands": [
            {
            "description": "Break on kernel launch",
            "text": "set cuda break_on_launch application",
            "ignoreFailures": true
            },
            {
            "description": "Disable source timestamp check",
            "text": "set check-source-file off",
            "ignoreFailures": true
            },
            {
            "description": "Enable pretty printing",
            "text": "-enable-pretty-printing",
            "ignoreFailures": true
            }
        ],
        },

        {
            "name": "Python: Debug Current File (Custom Interpreter)",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "cwd": "${workspaceFolder}",
            "env": {},
            "args": [],
            "justMyCode": false,
            "python": "/usr/local/miniconda3/envs/py312/bin/python"
        },
        {
            "name": "(gdb) Launch Python",
            "type": "cppdbg",
            "request": "launch",
            "program": "/usr/local/miniconda3/envs/py312/bin/python", // Python 解释器路径
            "args": [
                "/workspace/cuda_code/course10/ex_demo/demo.py"
            ], // Python 脚本参数
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}", // 工作目录
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "Set Disassembly Flavor to Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            "miDebuggerPath": "/usr/bin/gdb" // GDB 路径(可选)
        }
    ]
}
相关推荐
恋恋西风4 小时前
C++ 理解 std::thread 在单核和多核上的行为差异
开发语言·c++
Brilliantwxx4 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
BizzZ_5 小时前
C++(22)——类型转换和IO流
开发语言·c++
傲笑风6 小时前
【openvino】tinybert基于openvino服务化部署(四)
人工智能·python·自然语言处理·nlp·bert·openvino
维基框架6 小时前
WIKI 知识库 v1.1.1 正式发布
人工智能·python
青梅味猪大肠8 小时前
【深入浅出C++】为什么虚表指针可以解决菱形继承
开发语言·c++
Lhan.zzZ9 小时前
QML 组件库:VS2022 + Qt 静态库方案
开发语言·c++·qt·visual studio
xx~t10 小时前
嵌入式——Linux软件编程——网络1
linux·c语言·网络·vscode·网络协议
谢白羽10 小时前
SGLang的AWQ量化笔记
笔记·python·sglang
迷迭香yy10 小时前
基金档案数据工程实战从收入分析到持仓穿透的Python解析 IG50免费开源股票数据API接口
开发语言·python