1. 安装插件:
C/C++ for Visual Studio Code
C/C++ Project Generator
Chinese (Simplified) Language Pack for Visual Studio Code
2. 调试的时候出现:
Stopping due to fatal error: NullReferenceException: Object reference not set to an instance of an object.
解决办法:
修改 “launch.json” 中的 “externalConsole” 为 false。
3. 调试不能命中断点
查看插件 “C/C++ Project Generator” 为我们自动生成的 Makefile 文件,如下
CC := gcc
C_FLAGS := -Wall -Wextra
BIN := bin
SRC := src
INCLUDE := include
LIB := lib
LIBRARIES :=
ifeq ($(OS),Windows_NT)
EXECUTABLE := main.exe
else
EXECUTABLE := main
endif
all: $(BIN)/$(EXECUTABLE)
clean:
-$(RM) $(BIN)/$(EXECUTABLE)
run: all
./$(BIN)/$(EXECUTABLE)
$(BIN)/$(EXECUTABLE): $(SRC)/*
$(CC) $(C_FLAGS) -I$(INCLUDE) -L$(LIB) $^ -o $@ $(LIBRARIES)
可以看到最后一行,没有 “-g” 选项,所以无法生成调试信息,也就无法命中断点。解决方法是在最后加上 “-g” 选项。
$(CC) $(C_FLAGS) -I$(INCLUDE) -L$(LIB) $^ -o $@ $(LIBRARIES) -g
4. VS Code & Qt
https://blog.csdn.net/caoshiying/article/details/78281996
5. VS Code C/C++ 项目添加头文件包含路径
Ctrl + Shift + p 中选择 C/Cpp: Edit Configurations...
会生成 c_cpp_properties.json 文件。内容如下,然后在 “includePath” 中添加路径
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/**",
"/opt/pc_linux_new/include/",
"${workspaceFolder}/../../test_project"
],
"defines": [],
"compilerPath": "/usr/bin/gcc",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "clang-x64"
}
],
"version": 4
}
6. 添加 library 路径和要链接的库
在 Makefile 文件中修改 :
- LIB := lib
- LIBRARIES :=
两个项,如下是一个例子:
LIB := lib:/opt/pc_linux_new/lib #用冒号隔开
LIBRARIES := -lopencv_highgui -lopencv_imgproc -lopencv_core
7.