私はがお互いに依存(パッケージに編成)いくつかのpythonモジュールを、持っています。例えば複数のpythonモジュール(またはパッケージ)をcythonでコンパイルしてリンクする方法は?
- Module1の
- モジュール2:Module1を
- モジュール3
- Module4をインポート:モジュール3、モジュール2を輸入し、モジュール1
のは、アプリケーションを開発するために、関連するインタフェースを仮定しようがModule4と私でありますcythonを使用してModule4.soを生成したいとします。 私が素朴な方法で進めば、Module4.soをインポートできます。BUTは、Module1、Module2、Module3のpythonソースコードに依存しています。
Module1、Module2、Module3もをコンパイルし、Module4にをリンクするようにコンパイルする方法はありますか?私はすべて手作業を避けたいと思います。最初.... Module1.soがModule1.soではなくModule1.pyをインポートするように、その後、その後、モジュール2に輸入申告を変更するようにModule2.soにモジュール2をコンパイルし、
感謝をコンパイル!
ありがとうございますので、オプション3ではModule3.soではなく、Module3.soが自動的にインポートされます(上記の例を参照してください)。 – Mannaggia
@Mannaggiaは、ああ、今私はあなただけcythonを使用して、通常のPythonモジュールをコンパイルしたい、あなたはCython特定の機能(「PYX」ファイル)を使用していないことがわかります。はい、文の「インポートModule1が」「Module1.py」または「Module1.so」をインポートするための作品 - ちょうど私は、インポートされるモジュールを知らないと同じディレクトリに両方のファイルを置かないでください。変更はありません。.soはインポート時に.pyファイルのように扱われます。 –
@Mannaggia、何も変わらず、.soはインポート時に.pyファイルのように扱われます。 .pyモジュールを.soにコンパイルした後は、すべてがそのまま動作するはずです。 –