Dia 23 – Configurando o NixOS para utilizar o debbuger de C no VSCode

Eu instalo meus pacotes todos em environment.systemPackages no /etc/nixos/configuration.nix.

Então, além do gcc, para utilizar o debbuger é necessário:

environment.systemPackages = with pkgs; [

vscode-fhs
gdb
]

Utilizar o vscode-fhs facil…


This content originally appeared on DEV Community and was authored by Matheus Gomes ?‍?

Eu instalo meus pacotes todos em environment.systemPackages no /etc/nixos/configuration.nix.

Então, além do gcc, para utilizar o debbuger é necessário:

environment.systemPackages = with pkgs; [
...
vscode-fhs
gdb
]

Utilizar o vscode-fhs facilita muito o trabalho, instalar o pacote vscode (sem o fhs) gera alguns transtornos. Mais informações aqui.

No vscode, instale essa extensão:

extensão vscode c/c++

Para maior confiabilidade, "forcei" a criação de paths com:

environment.variables.PATH = "${lib.makeBinPath [
pkgs.gdb
pkgs.gcc_multi // esse é o pacote que utilizo pro gcc
]}:$PATH";

Não esqueça de reiniciar o computador após o sudo nixos-rebuild switch

Dentro do projeto, crie uma pasta .vscode e adicione um arquivo launch.json e 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"
    }
  ]
}

Para o campo command do tasks.json utilize o comando which gcc para pegar o caminho.
Faça o mesmo para miDebuggerPath do launch.json com o comando which gdb

Entre no arquivo que deseja depurar e aperte F5:
imagem do depurador funcionando

Depure e seja feliz.


This content originally appeared on DEV Community and was authored by Matheus Gomes ?‍?


Print Share Comment Cite Upload Translate Updates
APA

Matheus Gomes ?‍? | Sciencx (2024-10-22T01:46:01+00:00) Dia 23 – Configurando o NixOS para utilizar o debbuger de C no VSCode. Retrieved from https://www.scien.cx/2024/10/22/dia-23-configurando-o-nixos-para-utilizar-o-debbuger-de-c-no-vscode/

MLA
" » Dia 23 – Configurando o NixOS para utilizar o debbuger de C no VSCode." Matheus Gomes ?‍? | Sciencx - Tuesday October 22, 2024, https://www.scien.cx/2024/10/22/dia-23-configurando-o-nixos-para-utilizar-o-debbuger-de-c-no-vscode/
HARVARD
Matheus Gomes ?‍? | Sciencx Tuesday October 22, 2024 » Dia 23 – Configurando o NixOS para utilizar o debbuger de C no VSCode., viewed ,<https://www.scien.cx/2024/10/22/dia-23-configurando-o-nixos-para-utilizar-o-debbuger-de-c-no-vscode/>
VANCOUVER
Matheus Gomes ?‍? | Sciencx - » Dia 23 – Configurando o NixOS para utilizar o debbuger de C no VSCode. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2024/10/22/dia-23-configurando-o-nixos-para-utilizar-o-debbuger-de-c-no-vscode/
CHICAGO
" » Dia 23 – Configurando o NixOS para utilizar o debbuger de C no VSCode." Matheus Gomes ?‍? | Sciencx - Accessed . https://www.scien.cx/2024/10/22/dia-23-configurando-o-nixos-para-utilizar-o-debbuger-de-c-no-vscode/
IEEE
" » Dia 23 – Configurando o NixOS para utilizar o debbuger de C no VSCode." Matheus Gomes ?‍? | Sciencx [Online]. Available: https://www.scien.cx/2024/10/22/dia-23-configurando-o-nixos-para-utilizar-o-debbuger-de-c-no-vscode/. [Accessed: ]
rf:citation
» Dia 23 – Configurando o NixOS para utilizar o debbuger de C no VSCode | Matheus Gomes ?‍? | Sciencx | https://www.scien.cx/2024/10/22/dia-23-configurando-o-nixos-para-utilizar-o-debbuger-de-c-no-vscode/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.