ubuntu下载linux内核源码

ubuntu仓库里面关于源码部分配置的好全啊,什么都有,ps:包括vim的各种插件居然也有人打包放到仓库里,真是方便。

1.首先查看一下本系统使用的内核版本号:

cat /proc/version

Linux version 4.4.0-66-generic (buildd@lgw01-28) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4) ) #87-Ubuntu SMP Fri Mar 3 15:29:05 UTC 2017

2.然后使用apt搜一下,看看有没有对应的最新版:

apt search linux-source

linux-source/xenial-updates,xenial-updates,xenial-security,xenial-security 4.4.0.70.76 all

Linux kernel source with Ubuntu patches

linux-source-4.4.0/xenial-updates,xenial-updates,xenial-security,xenial-security,now 4.4.0-70.91 all [installed]

Linux kernel source for version 4.4.0 with Ubuntu patches

linux-source-4.8.0/xenial-updates,xenial-updates 4.8.0-44.47~16.04.1 all

Linux kernel source for version 4.8.0 with Ubuntu patches【文章福利】小编推荐自己的Linux内核技术交流群:【977878001】整理一些个人觉得比较好得学习书籍、视频资料共享在群文件里面,有需要的可以自行添加哦!!!前100进群领取,额外赠送一份价值699的内核资料包(含视频教程、电子书、实战项目及代码)

内核资料直通车:Linux内核源码技术学习路线+视频教程代码资料

学习直通车:Linux内核源码/内存调优/文件系统/进程管理/设备驱动/网络协议栈

3.然后,安装即可,安装后到/usr/src目录查找。

apt install linux-source-4.4.0

4.进入/usr/src/linux-source-4.4.0目录后,解压到自己的home目录(注意:压缩包自建好了文件夹,不用建新的了):

tar xjvf linux-source-4.4.0.tar.bz2 -C ~

5.安装ctags(其实安装的是:exuberant-ctags),方便查看该源代码:

apt install ctags

6.”–ctags setting–

” 按下F5重新生成tag文件,并更新taglist

map :!ctags -R –c++-kinds=+p –fields=+iaS –extra=+q . :TlistUpdate

imap :!ctags -R –c++-kinds=+p –fields=+iaS –extra=+q . :TlistUpdate

set tags=tags

set tags+=./tags “add current directorys generated tags file

set tags+=~/arm/linux-2.6.24.7/tags “add new tags file(刚刚生成tags的路径,在ctags -R 生成tags文件后,不要将tags移动到别的目录,否则ctrl+]时,会提示找不到源码文件)

set tags+=./tags表示在当前工作目录下搜索tags文件

set tags+=~/arm/linux-2.6.24.7/tags表示在搜寻tags文件的时候,也要搜寻~/arm/linux-2.6.24.7/文件夹下的tags文件。

然后保存并退出vi。这样,你就可以用vim在任意地方查看有关Linux的函数原形。

7.tag命令用法:

Ctrl+] 跳到当前光标下单词的标签

Ctrl+O 返回上一个标签

Ctrl+T 返回上一个标签

:tag TagName 跳到TagName标签

以上命令是在当前窗口显示标签,当前窗口的文件替代为包标签的文件,当前窗口光标跳到标签位置。如果不希望在当前窗口显示标签,可以使用以下命令:

:stag TagName 新窗口显示TagName标签,光标跳到标签处

Ctrl+W + ] 新窗口显示当前光标下单词的标签,光标跳到标签处

当一个标签有多个匹配项时(函数 (或类中的方法) 被多次定义),”:tags” 命令会跳转到第一处。如果在当前文件中存在匹配,那它将会被首先使用。

可以用这些命令在各匹配的标签间移动:

:tfirst 到第一个匹配

:[count]tprevious 向前 [count] 个匹配

:[count]tnext 向后 [count] 个匹配

:tlast 到最后一个匹配

或者使用以下命令选择要跳转到哪一个

:tselect TagName

输入以上命令后,vim会为你展示一个选择列表。然后你可以输入要跳转到的匹配代号 (在第一列)。其它列的信息可以让你知道标签在何处被定义过。

以下命令将在预览窗口显示标签

:ptag TagName 预览窗口显示TagName标签,光标跳到标签处

Ctrl+W + } 预览窗口显示当前光标下单词的标签,光标跳到标签处

:pclose 关闭预览窗口

:pedit file.h 在预览窗口中编辑文件file.h(在编辑头文件时很有用)

:psearch atoi 查找当前文件和任何包含文件中的单词并在预览窗口中显示匹配,在使用没有标签文件的库函数时十分有用。

最简单的使用方法举例

用vi在任意目录写一个Test.c文件,内容如下:

int main(void)

{

printf(“Hello World!\n”);

return 0;

}

写好后末行模式输入w保存好(不要退出vi),按Esc回到指令模式,把光标停留在printf上

然后按 Ctrl+W + ],vi会自动跳到Linux系统函数printf()处,这时我们能查看printf()的原形

查看完了,按Ctrl+o(回到上一个标签) 就回到原来的地方。
原文地址:https://www.cnblogs.com/litifeng/p/6637847.html(版权归原作者所有,侵删)

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片