28.1. distutils — Python モジュールの構築とインストール


distutils パッケージは、現在インストールされている Python に追加するためのモジュール構築、および実際のインストールを支援します。新規のモジュールは 100%-pure Python でも、C で書かれた拡張モジュールでも、あるいは Python と C 両方のコードが入っているモジュールからなる Python パッケージでもかまいません。

Python ユーザの大半はこのパッケージを直接使い たくはない でしょうが、代わりに Python Packaging Authority が保守しているクロスバージョンツールを使うでしょう。特に、setuptoolsdistutils の改良された代替品で、以下を提供しています:

  • プロジェクトの依存性の宣言のサポート
  • ソースのリリースの際どのファイルを含めるか指定する追加の機構 (バージョン管理システムとの統合のためのプラグインも含む)
  • プロジェクトの "エントリーポイント" を宣言する機能、アプリケーションプラグインシステムとして使うことができます
  • インストール時に事前にビルドすることなく、Windows コマンドライン実行ファイルを自動的に生成する機能
  • サポートしている Python の全バージョンで一貫性のある挙動

たとえスクリプト自身が distutils のみをインポートしていても、推奨される pip インストーラは setuptools で全 setup.py スクリプトを実行します。詳細は Python Packaging User Guide を参照してください。

現在のパッケージと配布システムへの理解を深めようとしている著者やユーザのために、レガシーな distutils に基づくユーザドキュメントと API のリファレンスは利用可能なままになっています。