作者chris234 (ZGMF-X19A)
看板LinuxDev
標題[問題] 不同的driver可以使用相同的function name嗎?
時間Wed May 27 13:55:24 2009
我有兩個很相似的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