関連性が変動する可能性があるいくつかの背景:
私は現在、いくつかの F2Py ライブラリ (Fortran コードから F2Py によってコンパイルされた Python モジュール) を所有しています。すべての意図と目的において、これらのモジュールを「サードパーティ」と見なすことができます。現在、私は Fortran のソース コードにアクセスできず、コンパイル プロセスも担当していません。
モジュール自体は、私が開発を手伝っている、Python スクリプトをサポートし、複数のプラットフォームで実行されるプログラムにインポートされます。
私は、コンパイル マシン上のライブラリ バージョンとユーザーのマシンが同期しなくなることによって引き起こされる互換性の問題から生じる将来のクラッシュを防止しようとしています。ユーザーのマシンの 1 つが互換性のないバージョンの numpy に変更されたという問題が既に発生しており、これにより、モジュールがインポートされたときに起動時に許容できないセグ フォールトが発生しました。
質問:
F2Py モジュールをインポートする方法を探していますが、モジュールが依存する可能性のある互換性のないライブラリ バージョンが原因で発生する可能性のあるセグ フォールトに対処できるようにする方法です。現在、インポートを呼び出す前にnumpyバージョンをチェックしていますが、最初にインポートしてから、後で問題を「キャッチ」したいと思います。
try:
import module_name
except SegFault:
# Deal with it.
特にインポートの結果として、セグメント障害をキャッチすることは可能ですか?