type
Post
status
Published
slug
2023/02/19/Linux-compile-error-Makefile:1161:vmlinux-Error-137
summary
make: *** [Makefile:1161: vmlinux] Error 137
tags
开发
Linux
category
Linux
icon
password
new update day
Property
Oct 22, 2023 01:31 PM
created days
Last edited time
Oct 22, 2023 01:31 PM
这个情况一般是由于编译的过程中内存不足导致的,如果你没有 swap 分区,可以添加 swap 分区分担内存压力,如果是因为 swap 分区较小,可以进行适量的调整。
我当时编译的配置如下
CPU 核心数 | 6 |
memory | 4096MB |
swap | 0 |
后面我将 swap 分区的大小调整为 5GB 就可以正常的完成编译了。
因为我原来的系统分区中没有 swap 分区,所以我使用的方法是直接使用交换文件。具体配置方式写在了下方。
Linux 添加 swap (交换文件方式)
注意:如果您使用Btrfs,请按照 Btrfs#交换文件 初始化交换文件,不要使用下面的方式。
- 使用 dd 去创建一个由你自己指定大小的交换文件。例如,创建一个 512 MiB 的交换文件:
dd if=/dev/zero of=/swapfile bs=1M count=512 status=progress
- 为交换文件设置权限(交换文件全局可读是一个巨大的本地漏洞):
chmod 0600 /swapfile
- 创建正确大小的文件后,将其格式化用来作为交换文件:
mkswap -U clear /swapfile
- 启用交换文件:
swapon /swapfile
- 最后,编辑
/etc/fstab
,在为交换文件添加一个条目:
/swapfile none swap defaults 0 0
注意:交换文件必须由文件系统上的位置指定,而不是由UUID或标签指定。
参考资料
欢迎加入“喵星计算机技术研究院”,原创技术文章第一时间推送。
- 作者:tangcuyu
- 链接:https://expoli.tech/articles/2023/02/19/Linux-compile-error-Makefile%3A1161%3Avmlinux-Error-137
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章