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 路径(可选)
        }
    ]
}
相关推荐
Allen_LVyingbo33 分钟前
NVIDIA CUDA Tile 在医疗计算中的算子形式化、算法重构与内核实现
大数据·python·算法·重构·知识图谱·健康医疗·数据库架构
云和数据.ChenGuang1 小时前
Python 闭包详解:从原理到实战
linux·开发语言·人工智能·python·kubernetes
你怎么知道我是队长2 小时前
C++零基础第3周:if/else、switch、for/while/do-while 控制流完全指南(附20段可运行代码+避坑清单)
java·开发语言·c++
我命由我123452 小时前
Python 实用操作 - 文件操作(打开与关闭文件、读取文件、文件写入)
java·开发语言·前端·javascript·数据库·python·java-ee
青少儿编程课堂2 小时前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:倍增法求最近公共祖先LCA解析
c++·python·算法·bfs·信息学竞赛
atwednesday3 小时前
一文理解python中的task,协程,woker
python
雷✘3 小时前
C++ 类与对象的初始化机制、成员访问边界与拷贝优化
java·网络·c++
用户0332126663673 小时前
使用 Python 在 Excel 中添加与删除筛选器
python·excel
1M553 小时前
AI应用后端工程(03):回答输出一半就断了:AI 流式接口如何定义成功与失败?
python·面试·职场和发展·计算机专业·agent开发
努力实干3 小时前
简单工厂模式(Simple Factory Pattern)——C++
开发语言·c++·简单工厂模式