在具有 8 个内核的 13.10 上构建 3.11.0 x86_64 内核所需的最小 RAM 量是多少?

在具有 8 个内核的 13.10 上构建 3.11.0 x86_64 内核所需的最小 RAM 量是多少?

我配置了一个 KVM 虚拟机 (VM),它有 8 个处理器核心和 256 MB RAM,没有交换空间。一个基于文本的极简 Ubuntu Saucy 13.10 amd64 已经完成。安装了构建/重新编译 3.11.0 内核所需的基本软件包。

  • 构建内核的预期架构是 ARCH=x86_64。
  • 运行的内核是 amd64 3.11.0-18-generic。
  • Gcc 是版本 4.8.1(Ubuntu/Linaro 4.8.1-10ubuntu9)。

执行命令时:

fakeroot make-kpkg -j 8 --initrd --append-to-version=-custom kernel_image kernel_headers"

最后结束于:

make: *** [debian/stamp/build/kernel] Error 2

控制台输出的第一个错误是:

  CC      drivers/gpio/gpio-stmpe.o
{standard input}: Assembler messages:
{standard input}:2242: Warning: end of file not at end of a line; newline inserted
{standard input}:4413: Error: unknown pseudo-op: `.l'
{standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive
gcc: internal compiler error: Killed (program cc1)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.8/README.Bugs> for instructions.
make[3]: *** [net/ipv6/udp.o] Error 4
make[2]: *** [net/ipv6] Error 2
make[2]: *** Waiting for unfinished jobs....

我的第一个想法是随机存取存储器(RAM)的数量被配置得太低(256MB)。

更新 #1

查看了控制台之后,我确信构建机器的 RAM 太少:

Out of memory: Kill process 8128 (cc1) score 117 or sacrifice child
Killed process 8128 (cc1) total-vm:102432kB, anon-rss:23184kB, file-rss:0kB

更新 #2

增加到 384MB、512 甚至 640MB 的 RAM 都不足以停止“内存不足”错误消息。

是什么最低限度数量需要 RAM构建内核

答案1

768MBRAM 足以编译 ARCH=x86_64 的 3.11.0 内核。

请注意 640MB 是不够的。

在这种情况下,.config 文件被修改为 localmodconfig,后来一些选项被禁用,而其他选项被启用。生成的 .config 文件大小为 86458 字节。

相关内容