vtk モジュールを利用する、私が書いていない Python スクリプトがあります。古い iMac と Linux マシンで動作しました。OS X Mavericks がインストールされた Macbook Pro で試してみると、レンダリング中にセグ エラーが発生します。スクリプトが seg fault 11 でクラッシュする原因となる vtkRender() メソッドの呼び出しのエラーを追跡しました。 pdb を使用してメソッド呼び出しに入りますか?)、アイデアはありますか?
最小限のプログラム クラッシュは次のとおりです。
Enthought Canopy Python 2.7.3 | 64-bit | (default, Aug 8 2013, 05:37:06)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import vtk
>>> test = vtk.vtkRenderer()
>>> test.Render()
Segmentation fault: 11
更新: VirtualBox に Ubuntu をインストールしたところ、上記の例と同じ seg fault が発生しましたが、vtk モジュールを使用する私の python スクリプトは問題なく動作します。
したがって、これは EPD と OS X Mavericks で提供される VTK パッケージを使用する場合の問題のようです。これを修正する方法はありますか?VTK の痕跡をすべて削除し、ソースからインストールしようとしましたが、この場合、VTK をインポートするだけでさまざまな問題が発生しています。
アップデート:
スクリプトの VTK コードにボイラープレートを追加することで、再び動作させることができます。確かに非常に奇妙な行動。Ubuntu では同一のコードとライブラリを使用して正常に動作しますが、Mac OS X では、いくつかの .Initialize() メソッド呼び出しなどをレンダリング オブジェクトに追加しない限り、エラーが発生します。