1. ホーム
  2. python

[解決済み】`Fatal Python error.Python'とは何ですか?PyThreadState_Get: no current thread` とはどういう意味ですか?

2022-01-29 08:24:40

質問

私はpythonからCにmpiコミュニケータを渡しています。mpi4pyはCをうまくサポートしていないようなので、私はboostのmpiコミュニケータを使うことにしました。チェックしてみてください。

        try: from boost.mpi import world
        except ImportError: from mpi import world
        err = run_with_mpi(infile, world, stdout, stderr, exc)

boost.mpiがインストールされているシステムでは、エラーは発生しません。しかし、macではboost.mpiがインストールできない。homebrewのboost155式でboostのmpi.soモジュールをインストールし、.soファイルをpythonpathに追加しました。

一般的に Fatal Python error: PyThreadState_Get: no current thread とはどういう意味でしょうか?このメッセージは、私のような開発者にどんな手がかりを与えてくれるのでしょうか?

エラーメッセージの全文

Fatal Python error: PyThreadState_Get: no current thread
[kilojoules-20160s:64471] *** Process received signal ***
[kilojoules-20160s:64471] Signal: Abort trap: 6 (6)
[kilojoules-20160s:64471] Signal code:  (0)
[kilojoules-20160s:64471] *** End of error message ***

解決方法は?

この問題は .so ファイルは、自作の公式からリンクされ、別の python のライブラリは、実行中のインタープリタとは異なりますので、こちらも参照してください。 このスレッド この回答 .

他に依存するものがなければ、homebrew の python インタプリタを使ってプログラムを実行します (これは /usr/local/bin/ ) で解決する場合があります。