1、VS Code可以编译却无法跳转找到对应的文件
***VS Code只是一个编辑器,不是编译器,不是IDE!!!!!***,所以好多东西都是需要自己去配置的 今天在VS Code上学习驱动编写的时候,跟着教程写了一个简单的驱动程序,然后VS Code的跳转和debug的json文件也是生成了的,但是#include<linux/module.h>却跳转不过去,linux/kernel.h却可以跳转过去(这是因为当前配置好的包含路径里面刚好有kernel.h文件,重名了),当时就想既然我linux/kernel.h文件都可跳转为什么其他的module.h却跳转不过去,但是可以运行,后来发现是需要ctl+shift+p——》C/C++:编辑配置(UI)来指定 IntelliSense 引擎在搜索包含的头文件时要使用的列表路径
2、Linux /usr/src下linux-headers-4.15.0-133和linux-headers-4.15.0-133-generic区别
运行
ls /usr/src
会发现有历史更新之前的旧版本的内核头,butttttt为啥对于同一个版本的内核头还有有generic和没有这个单词的区别 对于同一版本内核的这两个文件夹都只是头文件,并不是源代码,带有generic 的目录里面均是指向不带generic文件夹内容的链接
3、想要得到内核源文件,但是在/usr/src又只有头文件
这是还没有安装内核源码,在终端用sudo apt-get install linux-source(我使用这个命令下载的版本不是当前使用的内核版本,我是先使用uname -r查看当前使用版本,
然后sudo apt-get install linux-source-4.15.0,删除命令 sudo apt-get remove linux-source-4.4.0) 在执行好上述命令后再查看
|