色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 手把手教你學linux驅(qū)動開發(fā) OK6410系列之01---模塊編程

          手把手教你學linux驅(qū)動開發(fā) OK6410系列之01---模塊編程

          作者: 時間:2016-11-28 來源:網(wǎng)絡 收藏

          4、編譯模塊

          本文引用地址:http://cafeforensic.com/article/201611/322698.htm

          在work/lab/test01/目錄下輸入make命令。

          #make

          成功后會生成 test.ko文件。這個就是我們需要的模塊文件,其他的都是中間的臨時文件。

          查看一下test.ko文件信息,可以看出是基于ARM平臺的目標文件。

          #file test.ko

          可能出錯原因

          注意:由于編譯模塊時需要使用內(nèi)核中的一些依賴文件,因此需要確保在內(nèi)核源碼中那些文件存在。

          如果上面的編譯有錯誤,我們需要在內(nèi)核源碼根目錄下(/work/linux-2.6.36.2-v1.05/)執(zhí)行以下命令

          #make oldconfig && make prepare && make scripts

          5、測試模塊

          將前面生成的模塊文件(test.ko)下載到開發(fā)板的/lib/modules/2.6.36.2 目錄下(如果沒有此目錄,則需要手動創(chuàng)建)。

          在開發(fā)板上進行模塊的裝載與卸載操作。

          (1)裝載模塊

          # insmod/lib/modules/2.6.36.2/test.ko

          (2)查看模塊列表

          #lsmod

          (3)卸載模塊

          #rmmod test

          運行結(jié)果如下圖:

          作者:滄海獵人出處:http://blog.csdn.net/embedded_hunter轉(zhuǎn)載請注明出處嵌入式技術交流QQ群:179012822

          總結(jié)

          • 在做以上實驗時,要一直思考每個步驟的作用。我會盡量寫的詳細一些,你千萬不要只知道照著敲命令,否則你很難有進步。

          以上是本人在網(wǎng)絡上找的,復雜但省時,下面是從是師兄那里學來的簡單但是費時

          可以把寫好的驅(qū)動程序(如test.c)放到內(nèi)核源碼目錄下的任何子目錄(如linux2.6.38/drivers)修改test.c所在目錄的Makefile:添加obj-m+= test.o 然后回到源碼目錄linux2.6.38

          執(zhí)行make modules,即可在test.c所在的目錄下生成test.ko


          上一頁 1 2 下一頁

          評論


          技術專區(qū)

          關閉