Я установил Microsoft Visual C++ Build Tools 2015 на свой 64-битный win10 и могу использовать cl.exe для компиляции и компоновки программы C/C++ в обычном окне командной строки, выполнив следующие шаги (некоторые инструкции из Установка переменных пути и среды для сборок командной строки):
1. cd "\Program Files (x86)\Microsoft Visual Studio 14.0\VC"
2. vcvarsall amd64
3. cl helloworld.c
helloworld.c — это просто исходный файл C для печати «Hello world!». Я также пытаюсь настроить task.json для прямой компиляции и компоновки программ C/C++ в коде vs. Вот моя задача.json:
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "0.1.0",
"command": "vcvarsall amd64 && cl",
"isShellCommand": true,
"args": ["${file}"],
"showOutput": "always"
}
И пути vsvarsall
и cl
были добавлены в PATH. Но все равно не работает (вывод выложен в конце поста). Итак, мой вопрос заключается в следующем: как я могу определить task.json, который может сначала запустить vcvarsall amd64
для установки системных переменных, а затем выполнить команду cl
для компиляции и компоновки программ.
.bat
и указать на него параметрcommand
? Это будет работать, и вам не придется беспокоиться о том, как VSC обрабатывает команду, поскольку то, что вы сейчас делаете, кажется странным — вы объединяете две операцииcmd
, а также передаете файл в качестве параметра этому. Я бы посоветовал батник и просто указать путь к нему в значенииcommand
. - person Rudolfs Bundulis   schedule 08.09.2016