Я встраиваю какой-то драйвер в ядро Linux, когда получаю эту ошибку (я добавляю устройство в файл платы и регистрирую его):
error: 'kxtf9_get_slave_descr' undeclared here (not in a function)
Я нашел функцию выше в файле драйвера
struct ext_slave_descr *kxtf9_get_slave_descr(void)
{
return &kxtf9_descr;
}
EXPORT_SYMBOL(kxtf9_get_slave_descr);
Разве это не должно быть сделано «видимым» с помощью EXPORT_SYMBOL? Файл C, содержащий приведенный выше код, не имеет заголовочного файла (я его не писал, я просто нашел его я говорю, что это реализовано. предположим, что заголовок не нужен?
Остальной код компилируется отлично (поэтому он «видит» код в папке), и файл, содержащий приведенный выше код, тоже компилируется!