我将所有软件包安装在 /etc/nixos/configuration.nix 中的environment.systempackages 中。
因此,除了 gcc 之外,要使用调试器,您还需要:
environment.systempackages = with pkgs; [...vscode-fhsgdb]
使用 vscode-fhs 使工作变得更加轻松,安装 vscode 包(不带 fhs)会带来一些不便。更多信息请点击这里。
在 vscode 中,安装此扩展:

为了提高可靠性,我“强制”创建路径:
environment.variables.path = "${lib.makebinpath [pkgs.gdbpkgs.gcc_multi // esse é o pacote que utilizo pro gcc]}:$path";
在 sudo nixos-rebuild 开关后不要忘记重新启动计算机
在项目中,创建一个 .vscode 文件夹并添加 launch.json 和tasks.json 文件
tasks.json:
{ "tasks": [ { "type": "cppbuild", "label": "c/c++: gcc arquivo de build ativo", "command": "/nix/store/2ap4rlj55kw8q5ndycl0r8w312ggpf1c-gcc-wrapper-13.2.0/bin/gcc", "args": [ "-fdiagnostics-color=always", "-g", "${file}", "-o", "${filedirname}/${filebasenamenoextension}" ], "options": { "cwd": "${filedirname}" }, "problemmatcher": [ "$gcc" ], "group": { "kind": "build", "isdefault": true }, "detail": "tarefa gerada pelo depurador." } ], "version": "2.0.0"}
launch.json:
{ "version": "0.2.0", "configurations": [ { "name": "Debug arquivo ativo", "type": "cppdbg", "request": "launch", "program": "${fileDirname}/${fileBasenameNoExtension}", "args": [], "cwd": "${fileDirname}", "environment": [], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "miDebuggerPath": "/nix/store/2ap4rlj55kw8q5nd2460r8w312ggpf1c-gdb-14.2/bin/gdb", "preLaunchTask": "C/C++: gcc arquivo de build ativo", "internalConsoleOptions": "openOnSessionStart" } ]}
对于tasks.json中的命令字段,使用which gcc命令获取路径。
使用命令 which gdb
对 launch.json 的 midebuggerpath 执行相同的操作
输入要调试的文件并按f5:
调试并快乐。
以上就是Day – 配置 NixOS 以在 VSCode 中使用 C 调试器的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1461101.html
微信扫一扫
支付宝扫一扫