簡體   English   中英

內核模塊中的未定義符號

[英]Undefined Symbol in Kernel Module

我正在開發一個非常復雜的Linux驅動程序。 我正在移動一些文件,以嘗試“減少脂肪”。 我有4個“未定義!” 鏈接階段的符號。 我已經搜索了源代碼,但我真的不知道這些符號將包含在哪里。

我以為如果在已編譯的.ko上執行objdump -DS並搜索符號,我也許能夠從周圍的反編譯源中分辨出它們的來源。 但是,當我搜索符號時,甚至找不到它們!

有沒有辦法告訴WHERE或如何包含未定義的符號?

好的,我想出了個好方法。

我使用nm -u列出了目標文件中未定義的符號。 .o文件)

nm-列出目標文件中的符號

在每個.o中一個接一個地搜索我所知道的未定義符號,這向我顯示了它們來自哪個文件。 然后,我有一個開始的地方可以在我的實際.c文件或該.c文件中包含的頭文件中查找符號。

現在,它不是大海撈針,而是從干草堆中掉下來的一大堆干草的針。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM