在windows通过VS Code开发Linux内核驱动程序

这篇具有很好参考价值的文章主要介绍了在windows通过VS Code开发Linux内核驱动程序。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在windows通过VS Code开发Linux内核驱动程序

最近在看Linux设备驱动程序第三版,为了在windows系统上练手操作,先是下载VMware Workstation安装了Linux系统虚拟机。然后在vscode上编写简单的示例程序,通过ftp把源文件发送到Linux虚拟机后,再在虚拟机上make编译测试内核驱动程序。这样即使是在内核日志中打印个简单的hello world也需要复杂的过程,并且没有代码提示。

配置 VS Code

安装 VS Code 扩展插件

点击VS Code左边栏的扩展按钮,搜索并安装 C/C++ 和 Remote - SSH 这两个扩展插件,其他可根据自己喜好添加。
在windows通过VS Code开发Linux内核驱动程序

  • Remote - SSH
    在windows通过VS Code开发Linux内核驱动程序
  • C/C++在windows通过VS Code开发Linux内核驱动程序

配置SSH

安装Remote - SSH插件后左边就会增加一个“远程资源管理器”按钮,进入后点击加号。在windows通过VS Code开发Linux内核驱动程序

点击加号后会在顶部弹出输入框。在windows通过VS Code开发Linux内核驱动程序

输入ssh命令,比如:ssh root@192.168.106.128

“@”后面的IP是Linux虚拟机的IP地址,可以通过ifconfig命令查看。在windows通过VS Code开发Linux内核驱动程序

添加好SSH远程主机后,点击右边的按钮。在windows通过VS Code开发Linux内核驱动程序

在新窗口中输入用户密码在windows通过VS Code开发Linux内核驱动程序

连接成功后点击左边的资源管理器,再点击“打开文件夹”,选择打开Linux虚拟机中的代码文件夹。在windows通过VS Code开发Linux内核驱动程序

完成上面的步骤后就可以通过vscode直接在Linux虚拟机中的编写代码了,不需要再通过ftp将写好的源文件发到虚拟机上。

但是现在的VS Code仍无法关联到内核的头文件,需要再配置一下C/C++插件。

C/C++ 扩展插件配置

点击右下角的C/C++配置,或者直接按ctrl+shift+P搜索"C/C++",打开UI设置或者JSON设置在windows通过VS Code开发Linux内核驱动程序

在包含路径(include path)中添加路径(UI设置)在windows通过VS Code开发Linux内核驱动程序

/usr/src/kernels/3.10.0-1160.el7.x86_64/include/**
/usr/src/kernels/3.10.0-1160.el7.x86_64/arch/x86/include/**
/usr/src/kernels/3.10.0-1160.el7.x86_64/drivers/**
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/**
/usr/include/**
${workspaceFolder}/**

主要添加前面三个路径:

  • /usr/src/kernels/$(内核版本号)/include/**
  • /usr/src/kernels/$(内核版本号)/arch/x86/include/**
  • /usr/src/kernels/$(内核版本号)/drivers/**

内核版本号通过 “uname -r” 查看
在windows通过VS Code开发Linux内核驱动程序
添加 include path 后VS Code还是会出现“未定义标识符”的红波浪警告,目前的解决方法是将 compilerPath 改成空字符串 “”。文章来源地址https://www.toymoban.com/news/detail-460760.html

到了这里,关于在windows通过VS Code开发Linux内核驱动程序的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用 VS Code 快速搭建 ESP-IDF 开发环境 (Windows、Linux、MacOS)

    ESP-IDF 是乐鑫官方的物联网开发框架,适用于 ESP32、ESP32-S、ESP32-C 和 ESP32-H 系列 SoC。它基于 C/C++ 语言提供了一个自给自足的 SDK,方便用户在这些平台上开发通用应用程序,并集成了大量的软件组件,包括 RTOS、外设驱动程序、网络栈、多种协议实现技术以及常见应用程序的使

    2024年02月14日
    浏览(68)
  • windows驱动开发7:应用程序和驱动程序的通信

    一、基础介绍 1.1 设备与驱动的关系 设备由驱动去创建,访问一个设备,是首先得访问驱动。如果驱动在卸载的时候没有删除符号,r3下也是不能去访问设备的。 驱动程序和系统其他组件之间的交互是通过给设备发送或者接受发给设备的请求来交互的。换句话说,一个没有任

    2023年04月08日
    浏览(51)
  • Windows 驱动程序签名教程(一) --- 开发测试篇

    1.使用微软WHQL签名 2.使用2013-2015年签发的驱动签名,已过期未吊销未拉黑(不知道什么时候打个补丁会修复). 1.使用微软WHQL签名 2.使用过期签名的sha1 sha256都可以正常跑 1.使用微软WHQL签名,SHA256的签名需要打补丁支持(KB3033929). 2.SHA1签名 1.Windows 10 可以直接 输入命令: 2.如果还不

    2024年02月15日
    浏览(36)
  • 微软开源 windows-drivers-rs,用 Rust 开发 Windows 驱动程序

    导读 Microsoft Azure 首席技术官兼著名 Windows 软件开发人员 Mark Russinovich 在社交平台上宣布,启动了一个名为 windows-drivers-rs 的新开源项目。 该项目可帮助开发人员使用 Rust 开发 Windows 驱动程序,旨在支持 WDM (Windows Driver Model) 和 WDF (Windows Driver Framework) 驱动程序开发模型。 当前

    2024年02月08日
    浏览(49)
  • 微软开源 windows-drivers-rs, 用 Rust 开发 Windows 驱动程序

    Microsoft Azure 首席技术官兼著名 Windows 软件开发人员 Mark Russinovich 在社交平台上宣布, 启动了一个名为 windows-drivers-rs 的新开源项目。 该项目可帮助开发人员使用 Rust 开发 Windows 驱动程序, 旨在支持 WDM (Windows Driver Model) 和 WDF (Windows Driver Framework) 驱动程序开发模型。 当前版本的

    2024年02月08日
    浏览(43)
  • Linux驱动开发—最详细应用程序调用驱动程序解析

    Linux下进行驱动开发,完全将驱动程序与应用程序隔开,中间通过 C标准库函数 以及 系统调用 完成驱动层和应用层的数据交换。 驱动加载成功以后会在“/dev”目录下生成一个相应的文件,应用程序通过 对“/dev/xxx” (xxx 是具体的驱动文件名字) 的文件进行相应的操作 即可实

    2024年02月16日
    浏览(47)
  • Linux 驱动开发基础知识——Hello驱动程序(一)

     个人名片: 🦁作者简介:一名喜欢分享和记录学习的在校大学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755@qq.com 🦉个人WeChat:Vir2021GKBS 🐼 本文由妄北y原创,首发CSDN 🎊🎊🎊 🐨座右铭:大多数人想要改造这个世界,但却罕有人想改造自己。 专栏导

    2024年01月19日
    浏览(42)
  • Linux 驱动开发基础知识——认识LED驱动程序 (二)

     个人名片: 🦁作者简介:一名喜欢分享和记录学习的在校大学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755@qq.com 🦉个人WeChat:Vir2021GKBS 🐼 本文由妄北y原创,首发CSDN 🎊🎊🎊 🐨座右铭:大多数人想要改造这个世界,但却罕有人想改造自己。 专栏导

    2024年01月21日
    浏览(40)
  • Flutter 通过 VS code 连接 Android 模拟器(Windows)

    Flutter https://flutter.cn/docs/get-started/install/windows Android Studio https://developer.android.google.cn/studio

    2024年02月15日
    浏览(60)
  • Linux 驱动开发基础知识——LED 模板驱动程序的改造:设备树(十一)

     个人名片: 🦁作者简介:学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755@qq.com 🦉个人WeChat:Vir2021GKBS 🐼 本文由妄北y原创,首发CSDN 🎊🎊🎊 🐨座右铭:大多数人想要改造这个世界,但却罕有人想改造自己。 专栏导航: 妄北y系列专栏导航: C/C++的基

    2024年02月21日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包