說明
我有一個linux的嵌入式設備,但是沒有開發環境,不過我知道這個設備使用的SDk,于是我下載了對應的SDK包,編譯了內核,然后編譯了一個自己撰寫的驅動,但是在insmod時出現“insmod: can't insert '.*.ko': invalid module format ”,我modinfo查了下機器自帶的驅動,發現vermagic不同,
(左邊為嵌入式設備自帶驅動,右邊為新編譯驅動)于是修改了一些檔案,重新編譯,最后得到了一個與設備自帶驅動一樣的vermagic,但是insmod依然出現同樣的錯誤。已具備條件
內核版本相同,內核原始碼也相同,編譯器也相同 linux 4.4.48
修改后的vermagic也相同
組態檔使用了同平臺的組態檔.config(當然設備的組態檔.config與我使用的該平臺的組態檔可能有細微區別)(網上說.config也得相同)
問題
在這種情況下,還有哪些地方會限制insmod?
uj5u.com熱心網友回復:
直接用二進制工具修改內部資訊呢轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/97106.html
標籤:驅動開發/核心開發
上一篇:CAN通訊
