Прежде чем кто указывает на это, подобный вопрос был дан здесь раньше: Compiling Linux Kernel Module With A Custom HeaderВключая пользовательские заголовки в Linux модули
У меня есть один и тот же вопрос. Я создал свой собственный набор структур и функций и определил их в файле C. Затем я создал файл заголовка с тем же именем и включил его в модуль. Затем я создал Makefile:
obj-m += themodule.o
themodule-objs := the-module.o my-code.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
Мои пользовательские файлы - my-code.c и my-code.h.
Когда я попытался скомпилировать модуль, я получил тонну предупреждения, сказав, что все функции из my-code.c не определены в модуле .c. Когда я попытался загрузить модуль, я получил ошибки, сообщив, что функция вызывает my-code.c, были «неизвестными символами». Я попробовал решение, упомянутое в связанном вопросе (см. Makefile), но это не помогло мне. Есть предположения?
Вы можете скопировать и вставить вы * unknonw символы * ошибки и предупреждения компиляции? – Federico