我正在尝试安装drake的python绑定。在make --j之后,它会冻结。对于前面的步骤,我相信我做的一切都是正确的。有人能帮上忙吗?我在装有python 3.6.9的Ubuntu 18.04上运行。
提前谢谢你。它看起来像这样。
发布于 2020-04-16 05:42:22
使用make (无-j标志)或make -j1,因为bazel (在构建期间在内部调用)处理构建(和测试)的并行性,并将默认情况下将作业数设置为核心数(在您的示例中显示为8)。
要调整并行度以将作业数减少到少于核心数,请使用内容在存储库的根目录(与WORKSPACE文件级别相同)创建名为user.bazelrc的文件
test --jobs=N对于某些N,它比您拥有的内核数量要少。
另请参见https://docs.bazel.build/versions/master/guide.html#bazelrc。
发布于 2020-04-15 18:14:00
从屏幕截图看,drake构建系统看起来并没有做错什么。但是make -j可能正在尝试并行做太多的事情。尝试从-j4开始,如果它仍然冻结,请转到2,等等。
发布于 2020-10-12 16:40:44
可能内存不足..
一个不错的解决方案是更改CMakeLists.txt文件以设置bazel使用的最大作业数,方法是在${BAZEL_TARGETS}之后添加--jobs N (其中N是并发允许的作业数),如下所示
ExternalProject_Add(drake_cxx_python
SOURCE_DIR "${PROJECT_SOURCE_DIR}"
CONFIGURE_COMMAND :
BUILD_COMMAND
${BAZEL_ENV}
"${Bazel_EXECUTABLE}"
${BAZEL_STARTUP_ARGS}
build
${BAZEL_ARGS}
${BAZEL_TARGETS}
--jobs 1
BUILD_IN_SOURCE ON
BUILD_ALWAYS ON
INSTALL_COMMAND
${BAZEL_ENV}
"${Bazel_EXECUTABLE}"
${BAZEL_STARTUP_ARGS}
run
${BAZEL_ARGS}
${BAZEL_TARGETS}
--
${BAZEL_TARGETS_ARGS}
USES_TERMINAL_BUILD ON
USES_TERMINAL_INSTALL ON
)https://stackoverflow.com/questions/61219794
复制相似问题