Цифровые раскопки: использование vscode вместо eclipse
Цифровые раскопки: использование vscode вместо eclipse#
Eclipse - популярная IDE для разных языков программирования, включая C/C++. Но на ней свет клином не сошёлся и в последние годы некоторые проекты мне удобнее вести в vscode. Почему бы не добавить настроек для работы с проектом gps-sdr в vscode.
Вероятно, существует много разных способов настроить vscode, но мне ближе следующий.
Для компиляции кода настраивается команды через меню «Terminal -> Configure Tasks…». В результате формируется файл с настройками tasks.json.
Для запуска отладки настраивается «Run -> Add Configuration…». В результате формируется файл с настройками launch.json.
Пример содержимого tasks.json:
1 {
2 "tasks": [
3 {
4 "label": "Compile acq-test",
5 "type": "shell",
6 "command": "make"
7 },
8 {
9 "label": "make clean",
10 "type": "shell",
11 "command": "make clean"
12 }
13 ],
14 "version": "2.0.0"
15 }
Пример содержимого launch.json:
1 {
2 // Use IntelliSense to learn about possible attributes.
3 // Hover to view descriptions of existing attributes.
4 // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5 "version": "0.2.0",
6 "configurations": [
7 {
8 "name": "(gdb) Запустить",
9 "type": "cppdbg",
10 "request": "launch",
11 "program": "${workspaceFolder}/acq-test",
12 "args": ["-f", "../Palambak.bin", "-s"],
13 "stopAtEntry": true,
14 "cwd": "${workspaceFolder}",
15 "environment": [],
16 "externalConsole": false,
17 "MIMode": "gdb",
18 "setupCommands": [
19 {
20 "description": "Включить автоматическое форматирование для gdb",
21 "text": "-enable-pretty-printing",
22 "ignoreFailures": true
23 }
24 ]
25 }
26 ]
27 }
Для компиляции исходников я использую команду меню vscode: «Terminal -> Run Task…» и далее выбирается один из пунктов: «Compile acq-test» или «make clean» для сборки проекта или очистки соответственно.
Для запуска отладки собранного проекта выполняется пункт меню: «Run -> Start Debugging».
PS Ну и, конечно же, должно быть установлено расширение «C/C++ IntelliSense, debugging and code browsing».