目前的我犯的错都好蠢,基本不涉及技术层面,记录以供后来微笑。
1、但凡编译设备驱动,必须在内核已编译通过的前提下;
antimax@antimax-imx61:~/workspace/linux-3.14.52/drivers/char/x1$ make -C ~/workspace/linux-3.14.52/ M=$(pwd) modules
make: Entering directory `/home/antimax/workspace/linux-3.14.52'
scripts/Makefile.build:313: target `/home/antimax/workspace/linux-3.14.52/drivers/char/x' doesn't match the target pattern
CC [M] /home/antimax/workspace/linux-3.14.52/drivers/char/x1/hello.o
gcc: fatal error: no input files
compilation terminated.
] Error 4*** [/home/antimax/workspace/linux-3.14.52/drivers/char/x1/hello.o
make: *** [_module_/home/antimax/workspace/linux-3.14.52/drivers/char/x1] Error 2
make: Leaving directory `/home/antimax/workspace/linux-3.14.52'
2、编译好的*.ko模块,要插入或卸载均应在板子上使用串口操作,而不能在虚拟机上的terminal中操作,否则会提示nsmod: error inserting 'hello.ko': -1 Invalid module format;