歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 閱讀linux源碼的強大軟件Source Insight

閱讀linux源碼的強大軟件Source Insight

日期:2017/2/27 16:01:17   编辑:Linux教程
source insight的強大我就不說了,誰用誰知道,但強大功能的背後都有一套復雜的使用方法,動辄幾十頁的說明文檔看著就頭疼,真正常用的功能就那麼幾個,在此介紹下針對嵌入式linux愛好者的souceinsight的快速入門,希望對大家有用。 source insight 是windows下非常強大的程序代碼閱讀和編輯工具。特別是閱讀程序中的某個宏或函數時,需要了解該函數的原型卻不知道該函數是在本文件還是頭文件中定 義的,這時可利用source insight把該文件和用到的頭文件添加到一個項目中,閱讀程序文件時,只用單擊某函數或宏,其原型會在上下文窗口中自動顯示。 這個功能在閱讀linux源代碼和別人的項目程序時非常有用。強烈推薦。 source insight 會將程序中的全局變量、局部變量表上不同的顏色;光標移到某個變量、函數上時,窗口下方會自動顯示他們的定義;可快速找到函數間的調用關系;編輯代碼時,變量名、函數名會自動補全。 下面以創建一個基於arm的linux內核源碼項目為例介紹source insight的使用。PS:linux的內核源碼大部分為C文件,因此建立的項目語言類型為C,但是也存在匯編.S文件,因此要建立的項目包括的文件類型應包括
  1. 創 建一個c語言的source insight 工程。啟動source insight->菜單option->Document Option->Document Type(C Source File),file filter中添加*.s,*.S類型,之後單擊close關閉窗口。
  2. 單擊菜單Project->New Project->輸入工程名和保存路徑。
  3. 指 定源碼的源碼的存放位置後,單擊 Ok 按鈕進入 add and remove project files 界面。在此界面下選擇linux源代碼存放的路徑,如果不在上面顯示的盤符下,可在file names窗口中輸入路徑,如輸入E:\後回車,就進入了E盤目錄下。

右側的按鈕介紹
add 添加選中的文件和文件夾下的文件
add all 添加file name目錄框下的所有文件夾下的文件。單擊add all按鈕時在彈出的對話框中要選中include top level sub-directories 選項和recursively add lower sub-directories選項,表示遞歸添加子文件夾下的所有文件
add tree 遞歸添加選中的文件夾中的所有文件(包括子文件夾)
remove tree 刪除選中的目錄下的所有文件夾和文件

在此先添加linux源代碼下的所有文件夾 4. 刪除內核目錄中用不到的文件 由於linux支持多個架構的CPU,而在此只關心S3C24**目標板,所以可以在工程中刪除不相關的文件。 要刪除的目錄如下: arch 目錄下除 arm 外的所有目錄 arch/arm 目錄下以 mach 開頭的目錄(mach-s3c2410和mach-s3c2440除外) arch/arm 目錄下以 plat 開頭的目錄(plat-s3c24**除外) include目錄下以 asm 開頭的目錄(asm-arm、asm-generic除外) include/asm-arm目錄下以arch開頭的目錄(arch-s3c24**除外) 至此,工程建立完畢。 5 建立數據庫(同步源文件) 建立的數據庫的作用是保存項目源文件中個變量、函數之間的關系,這樣編輯代碼時source Insight可快速的提供各種輔助信息。 方法:菜單project->synchronize files->選中force all files to be re-parsed(強制分析所有文件),然後單擊Ok按鈕即可生成數據庫。 6 主界面介紹:左側為 符號窗口,顯示當前文件中的變量、函數、宏定義等。 下邊為 上下文窗口 在代碼窗口中單擊某變量,函數,宏的時候,此窗口會顯示他們的定義 7 使用技巧。在某個變量、函數、宏上右擊,在彈出的菜單中選擇lookup reference,可以快速的找到所有源文件對他們的使用,當然定義也在裡面。也可單擊窗口上側的“R”圖標,輸入要查詢的變量或其他,也可進行搜索。 其他使用技巧可參考各種souce insight使用說明和幫助文檔。在此不一一贅述。
Copyright © Linux教程網 All Rights Reserved