在 raspbian 上编译 pybind11 测试用例时出现致命错误
Posted
技术标签:
【中文标题】在 raspbian 上编译 pybind11 测试用例时出现致命错误【英文标题】:fatal error while compiling pybind11 test cases on raspbian 【发布时间】:2020-01-28 20:57:38 【问题描述】:按照this question,我现在正在尝试按照here 的指示在Raspberry Pi 上编译pybind11
测试用例。到目前为止我做了什么:
pybind11
我的环境是:
Raspbian buster 版本 10 python 3.7.3 点 20.0.2 gcc 8.3.0然后运行命令make check -j 4
编译器停止在:
[68%] 构建CXX对象CmakeFiles/pybind11_tests.dir/test_numpy_dtypes.cpp.o
错误是:
c++: 致命错误:终止信号终止程序 cplusplus
编译终止。
make[3]: *** [CMakeFiles/pybind11_tests.dir/build.make:297: CMakeFiles/pybind11_tests.dir/test_local_bindings.cpp.o] 错误1
make[3]: *** 等待未完成的工作...
make[2]: *** [CMakeFiles/Makefile2:110: CMakeFiles/pybind11_tests.dir/all] 错误2
make[1]: *** [CMakeFiles/Makefile2:191: CMakeFile/check.dir/rule] 错误2
make: *** [Makefile:157: check] 错误 2
如果您能帮助我了解问题所在以及如何解决,我将不胜感激。
【问题讨论】:
【参考方案1】:做更多研究并使用the right keyword query,似乎这个问题与bypynd11或Raspbian无关。问题似乎与之前许多帖子(包括here 和here)中所述的内存溢出有关。解决方案可能是使用更少的并行进程-j <n>
其中n < 4
,或者根本不使用它建议here。例如,我测试了
make check -j 3
它有效。或者按照here 的描述创建一个交换文件。
【讨论】:
【参考方案2】:是的,您必须创建第一个交换文件。之后你就可以做到了。实际上交换文件会增加你的内存。它将使用 rom 空间进行 ram 性能。
请浏览下面的链接,它会对您有所帮助。
https://youtu.be/Cr5mDFxvsb0
【讨论】:
以上是关于在 raspbian 上编译 pybind11 测试用例时出现致命错误的主要内容,如果未能解决你的问题,请参考以下文章