Visual Studio Code的使用

Visual Studio Code的使用

一、安装Visual Studio Code

VSCode的下载地址https://code.visualstudio.com/Download
下载好后使用sudo dpkg -i code..命令安装:

sudo dpkg -i code_1.43.2-1585036376_amd64.deb

在这里插入图片描述
/usr/share/applications目录中找到VSCode,安装的所有软件都在这个目录;然后右键,选择复制到桌面
在这里插入图片描述
以后在桌面双击即可打开VSCode。
为VSCodean安装插件,打开VSCode,点击Extensions,然后搜索插件:
在这里插入图片描述
我们需要安装的插件:

1)、C/C++,这个肯定是必须的。
2)、C/C++ Snippets,即C/C++重用代码块。
3)、C/C++ Advanced Lint,即C/C++静态检测 。
4)、Code Runner,即代码运行。
5)、Include AutoComplete,即自动头文件包含。
6)、Rainbow Brackets,彩虹花括号,有助于阅读代码。
7)、One Dark Pro,VSCode 的主题。
8)、GBKtoUTF8,将GBK 转换为UTF8。
9)、ARM,即支持ARM 汇编语法高亮显示。
10)、Chinese(Simplified),即中文环境。
11)、vscode-icons,VSCode 图标插件,主要是资源管理器下各个文件夹的图标。
12)、compareit,比较插件,可以用于比较两个文件的差异。
13)、DeviceTree,设备树语法插件。
14)、TabNine,一款AI 自动补全插件,强烈推荐,谁用谁知道!

如果要查看已经安装好的插件,可以按照如图所示方法查看:
在这里插入图片描述
安装好插件后,我们将VSCode该为中文环境,按下Ctrl+Shift+P打开搜索框,输入config,然后选择Configure Display Language,如图
在这里插入图片描述
然后点击zh-cn,重启VSCode
在这里插入图片描述
修改成功:
在这里插入图片描述

二、VS Code 工程创建

打开 VScode,选择:文件 ->打开文件夹 …,选中 Linux文件夹,如图所示:
在这里插入图片描述
打开后如下所示:
在这里插入图片描述
点击“文件->将工作区另存为 …”,打开保存工作区对话框,将工作区保存到nxp_linux源码根目录下,设置文件名为“nxp-linux”,如图所示
在这里插入图片描述
保存成功以后就会在linux源码根目录下存在一个名为 nxp_linux.code-workspace的文件。这样 一个完整的 VSCode工程就建立起来了。但是这个 工程就建立起来了。但是这个VSCode工程包含了 工程包含了linux的所有文件,linux中有些文件是不需要的,所以需要将其它的目录从VSCode中给屏蔽掉。
在 VSCode上新建名为“ 名为“ .vscode”的文件夹,如图 所示:
在这里插入图片描述
在这里插入图片描述
在.vscode文件夹中新建一个名为“settings.json”的文件,然后在settings.json中输入如下内容:
其中 "search.exclude"里面是需要在搜索结果中排除的文件或者文件夹, "files.exclude"是左 侧工程目录中需要排除的文件或者文件夹。

{
	"search.exclude":{
		"**/node_modules": true,
		"**/bower_components": true,
		"**/*.o":true,
		"**/*.su":true,
		"**/*.cmd":true,
		"Documentation":true,
		
		/* 屏蔽不用的架构相关的文件 */
		"arch/alpha":true,
		"arch/arc":true,
		"arch/arm64":true,
		"arch/avr32":true,
		"arch/[b-z]*":true,
		"arch/arm/plat*":true,
		"arch/arm/mach-[a-h]*":true,
		"arch/arm/mach-[n-z]*":true,
		"arch/arm/mach-i[n-z]*":true,
		"arch/arm/mach-m[e-v]*":true,
		"arch/arm/mach-k*":true,
		"arch/arm/mach-l*":true,
		
		/* 屏蔽排除不用的配置文件 */
		"arch/arm/configs/[a-h]*":true,
		"arch/arm/configs/[j-z]*":true,
		"arch/arm/configs/imo*":true,
		"arch/arm/configs/in*":true,
		"arch/arm/configs/io*":true,
		"arch/arm/configs/ix*":true,


		/* 屏蔽掉不用的DTB文件 */
		"arch/arm/boot/dts/[a-h]*":true,
		"arch/arm/boot/dts/[k-z]*":true,
		"arch/arm/boot/dts/in*":true,
		"arch/arm/boot/dts/imx1*":true,
		"arch/arm/boot/dts/imx7*":true,
		"arch/arm/boot/dts/imx2*":true,
		"arch/arm/boot/dts/imx3*":true,
		"arch/arm/boot/dts/imx5*":true,
		"arch/arm/boot/dts/imx6d*":true,
		"arch/arm/boot/dts/imx6q*":true,
		"arch/arm/boot/dts/imx6s*":true,
		"arch/arm/boot/dts/imx6ul-*":true,
		"arch/arm/boot/dts/imx6ull-9x9*":true,
		"arch/arm/boot/dts/imx6ull-14x14-ddr*":true,
	},
	"files.exclude": {
		"**/.git": true,
		"**/.svn": true,
		"**/.hg": true,
		"**/CVS": true,
		"**/.DS_Store": true,
		"**/*.o":true,
		"**/*.su":true,
		"**/*.cmd":true,
		"Documentation":true,
		
		/* 屏蔽不用的架构相关的文件 */
		"arch/alpha":true,
		"arch/arc":true,
		"arch/arm64":true,
		"arch/avr32":true,
		"arch/[b-z]*":true,
		"arch/arm/plat*":true,
		"arch/arm/mach-[a-h]*":true,
		"arch/arm/mach-[n-z]*":true,
		"arch/arm/mach-i[n-z]*":true,
		"arch/arm/mach-m[e-v]*":true,
		"arch/arm/mach-k*":true,
		"arch/arm/mach-l*":true,
		
		/* 屏蔽排除不用的配置文件 */
		"arch/arm/configs/[a-h]*":true,
		"arch/arm/configs/[j-z]*":true,
		"arch/arm/configs/imo*":true,
		"arch/arm/configs/in*":true,
		"arch/arm/configs/io*":true,
		"arch/arm/configs/ix*":true,
		
		/* 屏蔽掉不用的DTB文件 */
		"arch/arm/boot/dts/[a-h]*":true,
		"arch/arm/boot/dts/[k-z]*":true,
		"arch/arm/boot/dts/in*":true,
		"arch/arm/boot/dts/imx1*":true,
		"arch/arm/boot/dts/imx7*":true,
		"arch/arm/boot/dts/imx2*":true,
		"arch/arm/boot/dts/imx3*":true,
		"arch/arm/boot/dts/imx5*":true, 
		"arch/arm/boot/dts/imx6d*":true,
		"arch/arm/boot/dts/imx6q*":true,
		"arch/arm/boot/dts/imx6s*":true,
		"arch/arm/boot/dts/imx6ul-*":true,
		"arch/arm/boot/dts/imx6ull-9x9*":true,
		"arch/arm/boot/dts/imx6ull-14x14-ddr*":true,
	}
}

三、添加头文件路径

因为是编写Linux驱动,因此会用到Linux源码中的函数。我们需要在VSCode中添加 Linux源码中的头文件路径。打开VSCode,按下“ Crtl+Shift+P”打开 VSCode的控制台,然后输入“C/C++: Edit configurations(JSON) ”,打开 C/C++编辑配置文件,如图所示:
在这里插入图片描述
打开以后会自动在.vscode目录下生成一个名为c_cpp_properties.json的文件,此文件默认内容如下所示: 内容如下所示:
在这里插入图片描述
第 5行的 includePath表示头文件路径,需要将Linux源码里面的头文件路径添加进来,也就是我们前面移植的 Linux源码中的头文件路径。添加头文件路径以后的c_cpp_properties.json的文件内容如下所示:

{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/**",
                "/home/william/imx6ull/project/nxp_linux/include/",
                "/home/william/imx6ull/project/nxp_linux/arch/arm/include/",
                "/home/william/imx6ull/project/nxp_linux/arch/arm/include/generated/",
            ],
            "defines": [],
            "compilerPath": "/usr/bin/gcc",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "clang-x64"
        }
    ],
    "version": 4
}

第 7~9行就是添加好的 Linux头文件路径。分别是开发板所使用的Linux源码下的include、 arch/arm/include和 arch/arm/include/generated这三个目录的路径,注意里使用了绝对路径。

发布了62 篇原创文章 · 获赞 13 · 访问量 5572

猜你喜欢

转载自blog.csdn.net/qq_38113006/article/details/104502234