当前位置:   article > 正文

【VSCode】VScode 配置 Linux 驱动环境(简单版)_linux vscode

linux vscode

在开始编写驱动之前,我们需要保证良好的编码环境,这里编写代码所使用的编辑器是VScode,如果进行环境配置,可能会提示很多错误,比如头文件找不到、内核函数的定义无法跳转等等。

VScode 在这里只作为编辑器使用,配置的是编辑环境,而不是编译环境


目录

一、内核源码准备

1、下载并解压内核源码

2、内核源码解压

二、VScode 编辑环境配置

三、VScode安装插件


一、内核源码准备

1、下载并解压内核源码

编写驱动时,我们需要用到内核中的一些头文件,如 linux/module.h、fs.h 等,因此,我们需要先下载内核源码,本人使用的是imx6ull mini 版,可以在正点原子官方论坛下载到内核源码。

正点原子下载中心链接:正点原子下载中心

下载以后,然后解压,按照下图提示就可以获取到内核源码了。

2、内核源码解压

内核源码我们需要有两份,一份是放在Windows环境下,用于解决我们编写代码时,VScode找不到头文件的问题。

一份是放在Linux环境下,用于提供一些内核库,以便于将写好的源文件编译成模块(.ko 文件)

Windows下解压

解压以后记住解压路径,等会在配置VScode的时候会用到。本人这里的解压路径是 D:/linux-kernel/linux-imx-rel_imx_4.1.15_2.1.0_ga_alientek

Linux下解压

解压以后同样要记住解压路径,等会在编写Makefile文件的时候,需要指明内核源码所在目录。本人这里的解压路径是 /home/pigeon/workspace/linux-kernel 

二、VScode 编辑环境配置

方式一:VScode UI 配置

按下 Ctrl + Shift + P 打开设置面板,输入 c++ configure,选择Edit Configurations(UI) 

接下来就可以根据自身需求配置 C/C++ 环境了,下面选择的是调试时使用的编译器

这里是额外添加一些头文件路径,以便于我们在调试时可以跳转到指定头文件。下次再点进来看,似乎会被清空,但是效果依然在。

  1. "D:\\linux-kernel\\linux-imx-4.1.15-source-compiled\\include"
  2. "D:\\linux-kernel\\linux-imx-4.1.15-source-compiled\\arch\\arm\\include"
  3. "D:\\linux-kernel\\linux-imx-4.1.15-source-compiled\\arch\\arm\\include\\asm"

这里选择的是 C语法标准和 C++ 语法标准

方式二:配置文件配置 

除了在这个地方配置,其实还可以通过配置文件来配置,你打开 vscode 的时候,当前目录下会有一个 .vscode 目录,里面就包含了 c_cpp_properties.json 和 settings.json 两个配置文件。

c_cpp_properties.json 和上面UI 配置的效果是一样的,可以手动修改头文件路径、编译器路径、编译器选项等。

settings.json 可以对VSCode进行页面风格、代码格式、字体颜色大小等的编辑设置,此外还可以在我们查找时自动过滤某些文件(即不纳入查找)

三、VScode安装插件

VSCode 支持多种语言,比如 C/C++、Python、C#等等,为了方便后续代码编写,需要安装一些插件,如 C/C++的扩展包、设备树语法、Makefile语法等。

  • C/C++:必须要有的,支持C/C++语法
  • C/C++ Snippets:C/C++重用代码块
  • C/C++ Advanced Lint:C/C++静态检测
  • Include AutoComplete:自动头文件包含
  • Rainbow Brackets:彩虹花括号,有助于阅读代码
  • Arm Assembly:支持 ARM 汇编语法高亮显示
  • vscode-icons:VSCode 图标插件,主要是资源管理器下各个文件夹的图标
  • DeviceTree:设备树语法插件
  • TabNine:一款 AI 自动补插件
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/239886
推荐阅读
相关标签
  

闽ICP备14008679号