EMERGE_DEFAULT_OPTS

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page EMERGE DEFAULT OPTS and the translation is 50% complete.
Outdated translations are marked like this.

Warning: Display title "EMERGE_DEFAULT_OPTS" overrides earlier display title "EMERGE DEFAULT OPTS".

EMERGE_DEFAULT_OPTS 变量条目用于附加到 emerge 命令行。它通常用于通过 --jobs N--load-average X.Y 允许并发的 emerge 操作选项,它告诉 Portage 可以使用多少并行包构建以及可以使用并行性的系统负载(平均负载)。

EMERGE_DEFAULT_OPTS is often used to allow for concurrent emerge operations through the --jobs N and --load-average X.Y options, which tell Portage how many package builds can be ran simultaneously and up to what system load (load average) the parallelism can be used.

常见用例

并行构建

使用 --jobs N(简称:-jN),emerge 一次运行 N 个作业(不带参数,-j 会用尽可能多的作业淹没处理器,不推荐)。 N 的典型值等于内核数。

例如,并行运行最多三个作业:

文件 /etc/portage/make.conf启用 3 个并行包构建
EMERGE_DEFAULT_OPTS="--jobs 3"

当与 --load-average X.Y(简称:-lX.Y)一起使用时,emerge 会尝试保持系统的平均负载小于 X.Y,一个浮点数。如果 --jobs 也设置了,那么它将运行到该参数指示的限制。

负载平均值与 topuptime 显示的相同,对于一个 N 核系统,N.0 的负载平均值将是 100% 负载。这里的另一个经验法则是设置 X.Y=N*0.9 这将限制负载为 90%,从而保持响应能力。

附注
MAKEOPTS="-jN"EMERGE_DEFAULT_OPTS="--jobs K --load-average X.Y" 一起使用时可能创建的任务数量最多为 N*K。因此,这两个变量需要相互设置,因为它们创建最多 K 个作业,每个作业最多包含 N 个任务。

这两个设置适用于包含多个源代码文件的长 emerge 以充分利用 --jobs 参数。在某些情况下,它们也可能导致 emerge 错误,因此请谨慎使用并准备在出现问题时将其注释掉。

See also