VS Code C ++: неточные системные ошибки includePath (wchar.h, boost / lambda / lambda.hpp) - PullRequest
2 голосов
/ 05 февраля 2020

Устранена странная проблема включения с кодом VS на Ma c ОС Mojave 10.14.6.

обнаружены ошибки. Пожалуйста, обновите ваш includePath. Squiggles отключены для этого модуля перевода "(зависимость от" iostream ") Обратите внимание, что это начало происходить сразу после того, как я обновил мой MacOS CommandLineTools на xcode-select --install. Мой путь к компилятору находится в VS Код: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ И мой includePath ${workspaceFolder}/** ${BOOST_ROOT}/** , когда я добавляю /Library/Developer/CommandLineTools/usr/include/c++/v1/** к своему includePath и изменяю путь к компилятору на /usr/bin/g++, проблемы с STL включают go, и я получаю это: cannot open source file "boost/lambda/lambda.hpp" Обратите внимание, что когда я собираю программу из командной строки, она работает отлично; все найдено, как и должно быть. Это мой Makefile: PROG = sim CC = g++ CPPFLAGS = -g -Wall -I$(SDIR) -I$(ODIR) -I$(BOOST_ROOT) ODIR = ./bin SDIR = ./src OBJS = $(ODIR)/main.o $(PROG) : $(OBJS) $(CC) $(CPPFLAGS) -o $(PROG) $(OBJS) $(ODIR)/%.o : $(SDIR)/%.cpp $(CC) $(CPPFLAGS) -c $< -o $@ вывод из бега make: g++ -g -Wall -I./src -I./bin -I/usr/local/boost_1_72_0 -c src/main.cpp -o bin/main.o g++ -g -Wall -I./src -I./bin -I/usr/local/boost_1_72_0 -o sim ./bin/main.o И моя простая программа main . cpp: #include <iostream> #include <boost/lambda/lambda.hpp> int main() { using namespace boost::lambda; std::cout << "Hello World!\n"; return 0; } Это не проблема do-or-d ie; Я действительно просто удивляюсь, почему VS Code не может правильно найти заголовки включения. Мой код все еще работает, но красные кривые очень раздражают, когда они не точны. Я бы предпочел не отключать их, потому что, когда они правы, они полезны. Если это неправильное место для публикации этой проблемы, пожалуйста, дайте мне знать; Я могу опубликовать это где-нибудь еще. Дайте мне знать, если вам нужно больше подробностей. Заранее спасибо за помощь. Приветствия

...