9

この質問を別の言い方をすれば、Visual C++のどのバージョンが Python のpython.orgからの Python の各公式ビルドであり、どのバージョンの MinGW がこれらのバージョンの Visual C++ と互換性があるのでしょうか?

この情報は、どこかの Web サイトですぐに入手できますか?

4

3 に答える 3

9

PCbuild\readme.txtPython の各バージョンのソース配布のファイルには、バイナリの作成に使用された Visual Studio のバージョンが含まれています。

Python 2.6、2.7、3.1、および 3.2 はすべて VS 2008 でコンパイルされています。Python 3.3 および 3.4 は VS 2010 でコンパイルされています。

MinGW の互換性についてはわかりません。

コマンド ライン コンパイラを探している場合、Microsoft は、コマンド ライン コンパイラを含む Windows 7 用の 2 つの異なる SDK をリリースしました。最初の SDK (.NET 3.5 用) には、VS 2008 コンパイラが含まれています。2 番目の SDK (.NET 4.0 用) には、VS 2010 コンパイラが含まれています。

更新: PCbuild\readme.txtPython の各バージョンのソース配布のファイルには、バイナリの作成に使用された Visual Studio のバージョンが含まれています。

于 2012-08-19T20:04:02.603 に答える
3

おそらく、Python インスタンスと同じ C ランタイム ライブラリと動的にリンクするように Python 拡張機能を構築する必要があるという要件について話しているのでしょう。これはインスタンスのビルド方法に依存することに注意してください。つまり、ソース コードから自分で Python をビルドする場合、使用するランタイム ライブラリを決定するのは Python のバージョンではなく、ビルドに使用するコンパイラのバージョンです。 .

公式のバイナリ リリースのランタイム ライブラリのバージョンを知りたい場合は、お気に入りの DLL 依存関係ツール ( Dependency Walkerなど) を使用するか、再配布可能なランタイム ライブラリがインストーラーに含まれているかを調べて、自分で調べることができます。

私の非常に簡単な調査に基づいて、これらのランタイム ライブラリのいずれかで MinGW の最新バージョンを使用できると思います。デフォルトでは、Windows に組み込まれている C ランタイムである msvcrt.dll を使用しますが、代わりに VC++ ランタイムの使用をサポートしているようです。

于 2012-08-19T19:59:19.900 に答える