在外部设备上编译 Linux 内核后,我在构建外部模块时遇到问题。它是 4.19.103 内核,带有实时补丁 4.19.103。
我的板载存储磁盘<3Gb,因此我从外部块设备进行编译和安装。通过这样做,构建外部模块所需的内核“build”和“source”目录现在指向已安装的外部设备:
ll /lib/modules/4.19.103-rt42/
lrwxrwxrwx 1 root root 24 Feb 23 17:20 build -> /home/user/mnt/linux-4.19.103
lrwxrwxrwx 1 root root 24 Feb 23 20:15 source -> /home/user/mnt/linux-4.19.103
构建目录为 9Gb,我需要将其移动到 3Gb 板载磁盘。
kernel-devel
使用默认内核,可以通过安装“build”目录指向的包来轻松添加外部模块:
ll /lib/modules/4.18.0-147.5.1.el8_1.x86_64/
lrwxrwxrwx. 1 root root 44 Feb 4 18:07 build -> /usr/src/kernels/4.18.0-147.5.1.el8_1.x86_64
这个目录只有91Mb。 (与我的 9Gb 构建目录相比)
基本上我要问的是:有没有办法缩小构建目录,类似于包kernel-devel
对/usr/src/kernels/4.xxx
目录的处理方式?看起来这个目录只有 Makefiles/Kconfig 和一些标头,所以我可以删除所有构建对象和源文件 home/user/mnt/linux-4.19.103
并将其移动到我的根文件系统吗?安装的时候有make选项吗?我目前使用:
make modules_install headers_install install