이것은 커널 모듈을 생성하려는 첫 번째 시도이며, 분명히 모듈을 생성한 후 컴파일하려면 다음 단계를 따라야 합니다.
echo "obj-m := Hello.c" > Makefile
make -C /lib/modules/`uname -r`/build M=$PWD modules
uname -r
이것이 내 문제입니다. "/lib/modules//" 디렉토리에 "빌드"가 없습니다!
내가 여기서 무엇을 놓치고 있는 걸까요?
답변1
방금 다음 패키지가 누락되어 Linux 커널 모듈을 컴파일하기 전에 설치해야 함을 발견했습니다.
sudo apt-get install -y linux-headers-`uname -r`
이제 모듈을 컴파일할 준비가 되었습니다.
echo "obj-m := Hello.c" > Makefile
make -C /lib/modules/`uname -r`/build M=$PWD modules
sudo insmod Hello.ko