Linux下使用内核源码单独编译某一模块

使用Linux在于折腾。生命不息,折腾不止。


在vmware中安装了LinuxMint 18,自带内核是4.4,于是自己手动将内核版本升级到了4.8,但是安装新的内核后,发现vmware屏幕无法自动适应客户机,于是

lspci -knn查看了下显示模块,发现VGA没有可用的模块。于是对比了正常的虚拟机,发现内核使用一个叫做vmwgfx的模块。在内核源码中查找了下vmwgfx所在路径,

drivers/gpu/drm/vmwgfx/下有该模块的源码,于是决定在不重新编译内核的情况下,单独编译该模块。


首先在该模块源码所在路径下,查看Makefile文件,找到该模块编译的目标:


ok,接下来就开始单独编译这个模块啦:

1. make oldconfig

2. make prepare

3. make scripts

#这一步可能会提示scripts/sign-file.c:23:30: fatal error: openssl/opensslv.h: No such file or directory

#安装libssl-dev软件包即可。

4. make CONFIG_DRM_VMWGFX=m -C /home/dange/tmp/linux-4.8.0 M=/home/dange/tmp/linux-4.8.0/drivers/gpu/drm/vmwgfx modules

坐等编译完成即可啦。

你可能感兴趣的:(Linux下使用内核源码单独编译某一模块)