2012-02-08 6 views
5

これはDebian SqueeezのPython 2.6.6用です。彼らは、私はソースから自分自身をコンパイルしてインストールする必要がありますしないかのよう"--with-threads --enable-shared"でPythonが設定され、コンパイルされているかどうかを確認する方法はありますか?

--with-threads --enable-shared 

:私は、Debianに同梱されたバイナリがのフラグで構成されていたかどうかを確認しようとしています。

+0

pyconfig.hから情報を解析してみますか?このファイルはコンパイル時に生成され、プラットフォーム固有のものです。しかし、すべてのフラグがあるかどうかはわかりません:(また、Python -vを実行するといくつかの情報が表示される可能性があります。 –

答えて

11

--with-threads(これがデフォルトです)は、Pythonがスレッディングをサポートしていることを意味します。つまり、import threadが機能します。これをテストする簡単な方法は、python$version -m threading

--enable-sharedであるPythonが$prefix/libにインストールlibpython$version.soファイルが付属していますを意味します(python$versionディレクトリと並んで、ないこと内部。)一番簡単な方法は、そのファイルがあるかどうかを見ることです - このlibpython共有ライブラリを使用する必要があるため、あなたが知りたいと思うと仮定します。 python$versionバイナリがこの共有ライブラリを使用しているかどうか実際に知る必要がある場合は、lddがそれを伝えます。 /usr/bin/python$versionが静的​​にリンクされていても、Debian上では/usr/lib/python$version.soが存在するため、私はその区別をしています。

+0

'import thread'によって、' ImportError'がスローされないことを意味します。 Pythonコード。 –

+0

ありがとう、トーマス - 美しい、簡潔な答え。ポイントで右。 – DrLou

関連する問題