MSYS2 и Visual Studio 2019 - Использование GCC с Intellisense - PullRequest
0 голосов
/ 15 апреля 2019

У меня возникли некоторые проблемы с использованием Intellisense с VS2019 и новой опцией «Открытый проект».

Цель состоит в том, чтобы использовать VS для Intellisense и использовать стандартные файлы сборки, совместимые с Linux, без обращения к ним.сделать или что-нибудь еще.

Тем не менее, я получаю такие вещи, как "пространство имен" std "не имеет члена" cout "- довольно простые вещи;поэтому Intellisense не читает все, что нужно для пространства имен std.

main.cpp:

#include "circle.h"
#include <iostream>

 int main(){
    Circle new_circle;
    new_circle.setRadius(3.0);
    std::cout << new_circle.getArea() << std::endl;
 }

circle.h:

class Circle
{
    private:
        double radius;
    public:
        void setRadius(double r); 
        double getArea();
};

CppProperties.json:

{
  "configurations": [
    {
      "inheritEnvironments": [
        "mingw64"
      ],
      "name": "Mingwx64-Debug",
      "includePath": [
        "C:\\msys64\\mingw64\\x86_64-w64-mingw32\\include",
        "C:\\msys64\\mingw64\\include\\c++\\8.3.0\\x86_64-w64-mingw32\\bits",
        "C:\\msys64\\mingw64\\include\\c++\\8.3.0",
        "${env.INCLUDE}",
        "${workspaceRoot}\\**"
      ],
      "defines": [
        "__GNUC__"

      ],
      "intelliSenseMode": "windows-clang-x64"
    }
  ],
  "environments": [
    {
      "INCLUDE": "\"project/lib/include;${env.MINGW_PREFIX}/mingw/include; ${env.MINGW_PREFIX}/include/c++/8.3.0/;${env.MINGW_PREFIX}/include/c++/8.3.0/x86_64-w64-mingw32/bits ; ${env.MINGW_PREFIX}/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/include; ; ${env.MINGW_PREFIX}/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../include; ${env.MINGW_PREFIX}/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/include-fixed; ${env.MINGW_PREFIX}/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w6",
      "MINGW_CHOST ": "x86_64-w64-mingw32",
      "MINGW_PACKAGE_PREFIX": "mingw-w64-x86_64",
      "MINGW_PREFIX": "C:/msys64/mingw64",
      "MSYSTEM": "MINGW64",
      "MSYSTEM_CARCH": "x64_64",
      "MSYSTEM_PREFIX": "${env.MINGW_PREFIX}",
      "PATH": "${env.MINGW_PREFIX}/bin;${env.MINGW_PREFIX}/../usr/local/bin;${env.MINGW_PREFIX}/../usr/bin;${env.PATH};",
      "SHELL": "${env.MINGW_PREFIX}/../usr/bin/bash",
      "TEMP": "${env.MINGW_PREFIX}/../tmp",
      "TMP": "${env.TEMP}"
    }
  ]
}

Makefile:

.RECIPEPREFIX = >

all: circle.cpp main.cpp
> g++ main.cpp circle.cpp -o main

Пожалуйста, помогите, это сводит меня с ума!

...