使用eclipse整合式開發環境開發第一個嵌入式Linux驅動__Linux

來源:互聯網
上載者:User

1.準備工作

  首先得安裝好gcc工具鏈,以及開發環境,可以看看我的前面的幾步。

   還得編譯好核心,一般開發板都帶了,現在我還不知道配置核心,只能按照開發板預設的去編譯,編譯前需要先編譯uboot,建議像我一樣的新手先學會驅動編寫,慢慢的去學習 核心的配置裁剪,我覺得到時候這個肯定是非常簡單的過程,只不過沒有找到門道而已,等我會了一定和大家分享,如果有會的可以教我一下,在下感激不盡。

我的嵌入式核心編譯的路徑為:/home/cfan/linux/linux-3.0.1/  ,這個待會會用到的。

今天我就教大家使用eclipse開發一個最簡單的驅動程式,LED驅動,其實使用eclipse編譯這種簡單的驅動可能顯得有點麻煩,如果是大工程我想整合式開發環境的優勢就會體現出來了,還有就是eclipse的編輯器介面比較友好,跟RVDS4.0一樣。


2.建立驅動工程,設定eclipse

 開啟eclipse

 可以在案頭上面建立一個指向eclipse的快速鍵,或者到eclipse的目錄執行 ./eclipse 即可啟動,我設定了eclipse的全域變數,因此只需要在終端中輸入eclipse即可啟動,如下圖


建議將工程目錄選擇在NFS共用的那個目錄,這樣方便從開發板載入驅動或者執行程式,我的就選擇在nfs6410這個共用目錄裡面。

建立一個C項目,空項目


一直下一步,直到下圖位置,填好自己的arm-linux-gcc的路徑。


設定完成後點擊完成。

到這一步建立工程完成了,此時還有重要的一部要做,先別急著添加.c檔案。在工程上面右鍵,屬性,到 C/C++常規---->Code Analysis---->路徑和符號


點擊下方ExportSettings,將設定匯出為xml檔案.我的道出到案頭上面了,這個大家隨意

點擊確定 應用 退出即可。

到你剛才儲存的位置處開啟那個.xml檔案,用文字編輯器開啟即可,我的在案頭上面,按右鍵,使用文字編輯器開啟


現在我們還需要將autoconf.h中的宏定義加入到Eclipse中,執行如下步驟

開啟核心的這個目錄 include/generated/ 這個按個人實際情況而定,我的是 cd /home/cfan/linux/linux-3.0.1/include/generated/ ,另外開啟一個終端 cd到這個目錄


在剛剛這個終端中執行

[cpp]  view plain copy cat autoconf.h |grep define |awk '{print "<macro><name>" $2 "</name><value>" $3 "</value></macro>"}' > symbol.xml  
此時開啟這個目錄/home/cfan/linux/linux-3.0.1/include/generated,會多了一個檔案


將 symbol.xml這個檔案用文字編輯器開啟


此時文字編輯器裡面開啟了兩個xml檔案了,將之前置出eclipse的那個xml檔案開啟,需要添加一行代碼,在這兩行代碼之間(如果有兩個,是下面的那個)

[html]  view plain copy <language name="C 源檔案">            </language>   添加

[html]  view plain copy <macro><name>__KERNEL__</name><value>1</value></macro>  
如下圖


添加後



再將剛剛那個symbol.xml檔案裡面的所有代碼複製到

[html]  view plain copy <macro><name>__KERNEL__</name><value>1</value></macro>   這行的下一行,如下圖


在上面的一個

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.