互斥 Bitbake Recipes/Tasks
Mutually Exclusive Bitbake Recipes/Tasks
我有几个 do_compile
任务使用大量内存(大量 C++ 模板)的食谱。如果我同时构建食谱,它们会耗尽主机的内存,内存不足的杀手开始杀戮。
我已经多次修改 BB_NUMBER_PARSE_THREADS
、BB_NUMBER_THREADS
、PARALLEL_MAKE
和 PARALLEL_MAKEINST
,但是为这些变量选择数字是不可行的在所有情况下都能很好地工作。例如,如果我将 BB_NUMBER_THREADS
设置为 1
以便一次只构建其中一个配方,那么在没有任何更改(一切都可以是从缓存中提取)。我觉得这些不是解决我问题的正确方法。
有没有办法告诉 bitbake 一次只构建这些配方的 do_compile
任务之一,而让其他配方的任务正常构建?
这不是您正在寻找的答案,但您可以得到类似的答案:
do_compile[lockfiles] = "${WORKDIR}/mylock"
这需要任务获取并持有锁才能执行,那么您可以确定一次只有一个 运行。
我有几个 do_compile
任务使用大量内存(大量 C++ 模板)的食谱。如果我同时构建食谱,它们会耗尽主机的内存,内存不足的杀手开始杀戮。
我已经多次修改 BB_NUMBER_PARSE_THREADS
、BB_NUMBER_THREADS
、PARALLEL_MAKE
和 PARALLEL_MAKEINST
,但是为这些变量选择数字是不可行的在所有情况下都能很好地工作。例如,如果我将 BB_NUMBER_THREADS
设置为 1
以便一次只构建其中一个配方,那么在没有任何更改(一切都可以是从缓存中提取)。我觉得这些不是解决我问题的正确方法。
有没有办法告诉 bitbake 一次只构建这些配方的 do_compile
任务之一,而让其他配方的任务正常构建?
这不是您正在寻找的答案,但您可以得到类似的答案:
do_compile[lockfiles] = "${WORKDIR}/mylock"
这需要任务获取并持有锁才能执行,那么您可以确定一次只有一个 运行。