mam osadzanie jakiś sterownik do jądra Linux, kiedy ten błąd (Dodaję urządzenie w pliku pokładzie i zarejestrowanie go):Jak zapobiec "nieopisanemu tutaj" symbolowi błędu: "mimo EXPORT_SYMBOL w module jądra Linuksa?
error: 'kxtf9_get_slave_descr' undeclared here (not in a function)
I znajduje funkcję powyżej w pliku sterownika
struct ext_slave_descr *kxtf9_get_slave_descr(void)
{
return &kxtf9_descr;
}
EXPORT_SYMBOL(kxtf9_get_slave_descr);
Czy nie powinno być "widoczne" przez EXPORT_SYMBOL? Plik C zawierający powyższy kod nie ma nagłówka pliku (nie pisać, po prostu okazało się, że here i jestem wykonawczych. Mówią to przetestowane, więc zakładam, nagłówek nie jest potrzebny?
Reszta kodu kompiluje się idealnie (więc "widzi" kod w folderze), a plik zawierający powyższy kod również się kompiluje!
Minimalny przykład pracy: https://stackoverflow.com/questions/12311867/how-to-call-exported-kernel-module-functions- from-another-module/44614246#44614246 –