这几天,一直都被这个问题纠结着,挺莫名其妙。通过昨天的思索,发现,生成一个正确的模块,需要根据模块的运行平台,指定合适的内核源代码,合适的编译器。
还有就是由于内核版本的不断升级,有些接口,有些变量已经不再使用,这个时候,指定的内核源代码无法继续为程序提供所需的函数,模块无法生成。
最明显的一个错误如下
之前百思不得其解,有朋友说是因为之前没有编译过,OK,哥编译一下,
问题在这里,obj-m: =device.o,少掉了,一个“=”,导致错误。
这几天,一直都被这个问题纠结着,挺莫名其妙。通过昨天的思索,发现,生成一个正确的模块,需要根据模块的运行平台,指定合适的内核源代码,合适的编译器。
还有就是由于内核版本的不断升级,有些接口,有些变量已经不再使用,这个时候,指定的内核源代码无法继续为程序提供所需的函数,模块无法生成。
最明显的一个错误如下
之前百思不得其解,有朋友说是因为之前没有编译过,OK,哥编译一下,
问题在这里,obj-m: =device.o,少掉了,一个“=”,导致错误。