Проблема в VSCode "$ g cc" для сопоставления проблем с распознаванием пути к файлу в отчетах об ошибках компилятора C ++ - PullRequest
0 голосов
/ 18 апреля 2020

Я только что установил свой запуск. json и задачи. json, как сказано в руководстве по Inte rnet. Но когда я предварительно компилирую F5 и нахожу некоторые ошибки, я не могу нажать на красные слова «ошибки», показанные в разделе «Проблемы». Description

Если я нажму, информация будет: Description

Кто-нибудь может мне помочь?

задание. json

{
    // https://go.microsoft.com/fwlink/?LinkId=733558
    "version": "2.0.0",
    "tasks": [
        {
            "type": "shell",
            "label": "g++.exe build active file",
            "command": "C:\\MinGW\\bin\\g++.exe",
            "args": [
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "C:\\MinGW\\bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build"
        }
    ]
}

1 Ответ

0 голосов
/ 20 апреля 2020

Проблема заключается в сопоставителе проблем "$gcc", определенном в расширении ms-vscode.cpptools-0.XX.0.

Это тот же сопоставитель проблем, что и упомянутый в документации по задачам о сопоставителях проблем .

Этот сопоставитель использует относительные пути. Но MinGW с g ++ v8 использует абсолютные пути к файлам в ошибке, когда исходный файл указывается с абсолютным путем к файлу в свойстве args задачи.

Решение состоит в том, чтобы изменить средство сопоставления проблем "$gcc" и использовать абсолютный путь к файлу.

      "problemMatcher": {
        "base": "$gcc",
        "fileLocation": "absolute"
      },
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...