看板 LinuxDev 關於我們 聯絡資訊
我有兩個很相似的driver 裡面許多function和variable名稱都相同 各別build進kernel都沒問題 但是放在一起build的話就不行了 在link的時候會出現error message: drivers/driver2/driver2.o: In function `MyFunction': drivers/driver2/driver2.o(.text+0x22dec): multiple definition of `MyFunction' drivers/driver1/driver1.o(.text+0x1e92c): first defined here (是用link進kernel image的方式載入,不是insmod) 請問有沒有改名字以外的解決方法呢? 還是改成insmod就可以解決了呢? (會同時用到兩個driver) 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.132.144.245
Spig:如果該function 只有單一檔案用上,那在 function 前加 static 05/27 20:12
Spig:Ex: static int MyFunction( int arg ) { ... } 05/27 20:13
chris234:不只單一檔案...現在正在改用insmod試試看 05/28 23:29