#visual-studio-code #vscode-settings #vscode-tasks
#visual-studio-code #vscode-задачи
Вопрос:
Вот мой tasks.json
для справки:
{
"version": "2.0.0",
"tasks": [
{
"type": "cppbuild",
"label": "build active file with debug",
"command": "/usr/bin/g ",
"args": [
"${file}",
"-o",
"${workspaceFolder}/out/${relativeFileDirname}.out",
"-g"
],
"problemMatcher": ["$gcc"],
"group": "build",
"detail": "compiler: /usr/bin/g "
},
]
}
Вот видео, демонстрирующее результат: https://imgur.com/a/tvurtX1
В видео я компилирую файл 12-how-to-debug-effectively/main.cpp
, и, согласно моему tasks.json
, выходной файл должен быть out/12-how-to-debug-effectively.out
, но по какой-то причине подстановка переменных не работает, и я вместо этого получаю out/.out
.
Любые указатели, где я могу ошибаться?
Комментарии:
1. какова полная команда в терминале, которая имеет
g
2. Я не знаю, что вы имеете в виду, но
which g
дает/usr/bin/g
3. с помощью just
/usr/bin/g
вы не сможете скомпилировать программу4. Пожалуйста, скажите мне, что мне нужно сделать тогда.
5. используйте простую
echo
задачу и выясните, какие переменные работают, когда ваш редактор является файлом cpp code.visualstudio.com/docs/editor /…
Ответ №1:
cppbuild
недопустимое значение для type
аргумента.
Все примеры на сайте VSC doc используют "type": "shell"
При использовании "type": "shell"
я вижу команду, которая должна быть выполнена, и переменные заполнены правильно. (Я использовал подкаталог из 1 слова mysite
)
Используя "type": "cppbuild"
, я не вижу, какая команда выполняется.