I am trying to debug a fortran file on Visual Studio code(ubuntu 18.04).
I have the following installed extensions
My launch.json file is the following
"version": "0.0.1",
"configurations": [
{
"name": "Fortran Launch (GDB)",
"type": "cppdbg",
"request": "launch",
"targetArchitecture": "x86",
"program": "${workspaceRoot}/./a.out",
"miDebuggerPath": "gdb",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceRoot}",
"externalConsole": true,
"preLaunchTask": "gfortran"
}
]
since I am using linux, i dont need to give the path for gfortran. Also I tried changing the launch.json a little by changing .exe
to linux extensions. I have updated it in the question. However the debugger still doesn't run and gives the following error in the console
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".
=cmd-param-changed,param="pagination",value="off"
Stopped due to shared library event (no libraries added or removed)
Loaded '/lib64/ld-linux-x86-64.so.2'. Symbols loaded.
Breakpoint 1, 0x0000555555554a60 in main ()
[Inferior 1 (process 24472) exited normally]
The program '/home/m/gSoC/GasSimulator/./a.out' has exited with code 0 (0x00000000).
I don't know how to fix your specific problem, but here how I debugged a Fortran program in Visual Studio Code.
gfortran SOME FORTRAN FILES -g -Wall -Wextra -Warray-temporaries -Wconversion -fimplicit-none -fbacktrace -ffree-line-length-0 -fcheck=all -ffpe-trap=zero,overflow,underflow -finit-real=nan
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Lancer",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/a.out", // <-- Change this
"args": [], // <-- Change this
"stopAtEntry": false,
"cwd": "${workspaceFolder}", // <-- And maybe this
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
}
]
}
Maybe it was impossible or super hard to do in 2018, who knows? There have been a lot of update in VSCode and its plugins since then.
For future reference, I had the same problem and it got fixed by passing the -g option to the compiler
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With