ubuntu倉庫裏面關於源碼部分配置的好全啊,什麼都有,ps:包括vim的各類插件竟然也有人打包放到倉庫裏,真是方便。linux
1.首先查看一下本系統使用的內核版本號:c++
cat /proc/versionubuntu
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搜一下,看看有沒有對應的最新版:vim
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
3.而後,安裝便可,安裝後到/usr/src目錄查找。ui
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 ~it
5.安裝ctags(其實安裝的是:exuberant-ctags),方便查看該源代碼:io
apt install ctags
6."--ctags setting--
" 按下F5從新生成tag文件,並更新taglist
map <F5> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR><CR> :TlistUpdate<CR>
imap <F5> <ESC>:!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR><CR> :TlistUpdate<CR>
set tags=tags
set tags+=./tags "add current directory's 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(回到上一個標籤) 就回到原來的地方。