python.org からダウンロード可能な MSI インストーラーには、Tcl/Tkヘッダー(ソースではない) ファイルが含まれていません (matplotlib などの一部のパッケージをコンパイルするために必要です)。それらを含めない理由を知っている人はいますか?
2 に答える
Windowsインストーラーには、ソースファイルは含まれていません。それがWindowsアプリの仕組みだからです。1台のコンピューターでコンパイルでき、すべてで機能します。そのため、pythonやphpなどのWindowsバージョンは、すべてのオプションが有効になっているプリコンパイルされています。
ソースファイルが必要な場合は、ソースtarballなどをダウンロードする必要があります。
ユーザーは、Unix システムであっても、Python インタープリターを使用するためだけに Tcl/Tk ヘッダーを必要としません。
インタープリターを別のアプリケーションに組み込みたい場合は、python ヘッダーと lib ファイル (インストーラーに含まれています) のみが必要です。Tcl/Tk にリンクされている tkinter モジュールは、バイナリ ディストリビューションで既にコンパイルされているため、Python スクリプトは tkinter を介して Tcl/Tk を使用できますが、おそらく組み込みシナリオでは使用しないでください。その理由は、アプリケーションがPython/C APIを介してその UI 機能を Python に公開できるため、ホスト アプリ ウィンドウと Python ソース ウィンドウの間に (視覚的およびプログラム的に) 奇妙な切断が発生しないためです。
簡単に言うと、Tcl および Tk ヘッダーが必要な唯一の本当の理由は、ソースから tkinter モジュールをビルドしようとしている場合です。これは、Windows ではほとんど誰も行わないため、スペースを節約するために省略されています。