在 ubuntu 20.04 中使用命令“make -j”编译 QEMU 导致系统挂起

在 ubuntu 20.04 中使用命令“make -j”编译 QEMU 导致系统挂起

我想在我的 Ubuntu 20.04 中从源代码构建 qemu。按照官方说明构建 QEMU 似乎很普通。

make -j一开始命令执行还好,编译一段时间后速度慢慢变慢,最后整个系统挂了,键盘鼠标都卡住了,这种情况唯一能恢复的办法就是按电源键。

那么,这是 gcc 和源代码不匹配的兼容性问题吗?还是我使用了-j非法选项?

更新:

  1. 删除-j选项后问题就消失了。
  2. 通过附加选项使用少于 CPU 核心数的并行作业-jN也可以消除此问题。-j不带参数的单个选项使make命令利用整个核心进行编译。

答案1

请勿指定-j没有具体数字的“ ”,请尝试使用“ -j4”。

-j [jobs], --jobs[=jobs]
指定同时运行的作业(命令)数量。如果有多个 -j 选项,则最后一个有效。如果 -j 选项未带参数,make 将不限制可同时运行的作业数量。当 make 调用子 make 时,make 的所有实例将协调一次运行指定数量的作业;有关
详细信息,请参阅并行 MAKE 和作业服务器部分。

相关内容