Есть ли способ на VS Code для импорта проектов Makefile? - PullRequest
0 голосов
/ 07 декабря 2018

Как сказано в названии, могу ли я автоматически заполнить c_cpp_properties.json из существующего Makefile?

Ответы [ 2 ]

0 голосов
/ 11 декабря 2018

Для других, пытающихся импортировать make-файлы, я нашел набор сценариев, которые выполняют именно то, что я хотел достичь, управление встроенными проектами STM32 через VS Code.Если вы покопаетесь в папке scripts, вы найдете парсер make и популяции файлов проекта VSCode.

Здесь репозиторий, наслаждайтесь!

0 голосов
/ 09 декабря 2018

Этот ответ может не полностью дать вам то, что вы хотите, но, надеюсь, он поможет вам настроить среду VS Code.

В заголовке вашего вопроса вы упоминаете "Makefile projects", что свидетельствует о том, что высложилось неправильное впечатление, что (GNU) Makefiles записывают настройки проекта так же, как и файлы проекта Visual Studio.Makefile-ы не работают так, и краткий ответ на ваш вопрос - Нет, похоже, нет способа «импортировать» Make-файлы в VS Code и автоматически устанавливать значения в вашем файле c_cpp_properties.json.

* 1005Сказав это, есть некоторые другие механизмы, которые могут помочь вам начать работу с VS Code в вашей ситуации, в зависимости от других элементов, которые есть в вашем наборе инструментов.

VS Code работает при условии, что он открывает одинили несколько каталогов в вашей файловой системе.Когда вы это сделаете, он автоматически просканирует все свои подкаталоги, отобразит дерево и выполнит линтинг (если он включен) для выявления проблем.Действительно, включаемые каталоги необходимо добавить вручную в ваш файл c_cpp_properties.json, но чтобы рекурсивно добавить все ваши подкаталоги в список включаемых каталогов, вы можете использовать выражение

"${workspaceRoot}/**"

в качестве одного из элементов в вашем каталоге.includePath настройка.См. Сообщение в блоге Расширение Visual Studio Code C / C ++. Обновление за май 2018 г. - настройка IntelliSense стала намного проще! для получения дополнительной информации.Это часто решает множество пропущенных символов.Если вы также используете внешние или сторонние библиотеки, то вам нужно добавить их в настройку includePath вручную, и нет никакого способа обойти это.

Кроме того, вы можете создавать задачи VS Code для выполнения вашихmake команда по своему вкусу.Это объясняется здесь: Интеграция с внешними инструментами с помощью задач . Microsoft C / C ++ Extension поставляется с набором так называемых problemMatchers, которые анализируют выходные данные вашей команды и могут интерпретировать это для определенных известных компиляторов.Вы увидите гиперссылки на ошибки и предупреждения, чтобы перейти непосредственно к соответствующему местоположению в вашем коде.

Пример такой задачи может выглядеть следующим образом:

    {
        "label": "Build All Debug",
        "type": "shell",
        "command": "make -f path/to/Makefile DEBUG=1",
        "group": {
            "kind": "build",
            "isDefault": true
        },
        "presentation": {
            "reveal": "always",
            "panel": "new"
        },
        "problemMatcher": [
            "$gcc"
        ]
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...