Как собрать модуль ядра Linux с несколькими файлами c?

Сценарий, вероятно, работает, но STDOUT сценария (, где вывод направляется на ), связан с процессом в вашей ОС, который связан с запуском сценариев запуска, подобных этому, который не запускается в терминал, но является скрытым пользователем процессом, например, внутри ядра. Чтобы открыть терминал с этим сообщением, вам, вероятно, следует отредактировать его на

#!/bin/bash
gnome-terminal -e 'echo "hello this is a bash script talking"'

(Я сейчас не на Ubuntu, поэтому не могу проверить это, но суть в том, чтобы явно открыть терминал, где вы хотите, чтобы это сообщение отображалось в)

0
15.08.2019, 01:47
1 ответ

Здесь вы можете использовать мой Makefile в качестве справки.

INSTALL_DIR=modules
ifneq (${KERNELRELEASE},)
        obj-m :=cdd107.o
cdd107-objs := init.o clean.o opendev.o allocdev.o writedev.o readdev.o seekdev.o

else
        KERNELDIR ?= /lib/modules/$(shell uname -r)/build
        PWD := $(shell pwd)
default:
        $(MAKE) -C $(KERNELDIR) M=$(PWD) modules
        @rm -rf ${INSTALL_DIR}
        @mkdir ${INSTALL_DIR}
        @mv -f *.o *.ko *.mod.c.*.cmd ${INSTALL_DIR}
clean:
        rm -rf ${INSTALL_DIR}
endif

и сборка завершена без ошибок

журнал заданий:-

make -C /lib/modules/4.4.0-31-generic/build M=/home/vijay/Downloads/intro modules
make[1]: Entering directory '/usr/src/linux-headers-4.4.0-31-generic'
  CC [M]  /home/vijay/Downloads/intro/init.o
  CC [M]  /home/vijay/Downloads/intro/clean.o
  CC [M]  /home/vijay/Downloads/intro/opendev.o
  CC [M]  /home/vijay/Downloads/intro/allocdev.o
  CC [M]  /home/vijay/Downloads/intro/writedev.o
  CC [M]  /home/vijay/Downloads/intro/readdev.o
  CC [M]  /home/vijay/Downloads/intro/seekdev.o
  LD [M]  /home/vijay/Downloads/intro/cdd107.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/vijay/Downloads/intro/cdd107.mod.o
  LD [M]  /home/vijay/Downloads/intro/cdd107.ko
make[1]: Leaving directory '/usr/src/linux-headers-4.4.0-31-generic'

Надеюсь, это поможет вам.

1
28.01.2020, 03:21

Теги

Похожие вопросы