一些背景资料,其中的相关性可能波动:如何在导入F2Py模块时“捕捉”seg故障?
我目前在一些F2Py库possesion - 通过F2Py一些Fortran代码编译Python模块。对于所有意图和目的,您可以将这些模块视为“第三方”;我目前无法访问Fortran源代码,并且我不负责编译过程。
模块本身被导入到一个程序中,我正在帮助开发具有Python脚本支持并且可以在多个平台上运行的程序。
我正试图防止由编译机器上的库版本和用户机器不同步导致的兼容性问题引发的未来崩溃。我们的用户机器中有一台机器已经更换为不兼容的numpy版本,并且导入模块时启动时出现不可接受的故障。
问题:
我正在寻找一种方式来导入F2Py模块,但以这样的方式,这样我可以处理,因为该模块可依赖不兼容的库的版本可能发生的任何赛格故障上。我目前检查numpy的版本调用导入之前,但我宁愿导入,然后再“捕获”任何问题后:
try:
import module_name
except SegFault:
# Deal with it.
正赶上赛格故障 - 特别是作为进口的结果 - 在所有可能的?
虽然代码语法正确,你不能“对付”一个SIGSEGV信号:http://bugs.python.org/issue1215 – totaam
@totaam是仍然是真的吗? – gerrit
@gerrit:根据我链接到的Python票,是的。不太可能改变。 – totaam