0

modwisgi-3.4 をインストールしようとしているときに、次のエラーが発生しましたmake: mod_wsgi.c:142:20: error: Python.h: No such file or directory 公式のトラブルシューティング ページhttp://code.google.com/p/modwsgi/wiki/InstallationIssuesでは、「Python ランタイムに対応する Python の開発者パッケージをインストールすることをお勧めします。インストールしたパッケージ」です。

上記の開発パッケージをソースからインストールする方法は?Linuxでhttpd-2.2.24とmodwisgi 3.4を使用してpython2.7.4を実行しています。

4

2 に答える 2

1

以下を実行します。

$ python-config --cflags

これにより、Python.h を見つけるためにコンパイラに渡すフラグのリストが得られます。

$ python-config --cflags
-I/usr/include/python3.3m -I/usr/include/python3.3m -Wno-unused-result -DDYNAMIC_ANNOTATIONS_ENABLED=
1 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -march=x86-64 -mtune=generic -O2 -pipe -fstack-pr
otector --param=ssp-buffer-size=4 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ss
p-buffer-size=4

おそらくpython-config --ldflags、必要なリンカ フラグも実行する必要があります。

複数のバージョンの Python がインストールされている場合は、次のように指定できます。python2.7-config

posix-ap2X.mk.in次に、次の内容が含まれるように手動でファイルを編集します。

CFLAGS = @CFLAGS@ $(shell python-config --cflags)
LDFLAGS = @LDFLAGS@ $(shell python-config --ldflags)

Autoconf ファイルはこのconfigure.ac問題を解決しようとしますが、明らかにうまく機能していないように見えるので、この手動の方法で問題が解決されることを願っています。

編集:ああ、また、必ず正しいpython-configものを使用し、必要に応じて使用するPythonインタープリターを指定してください。たとえば、Python をソースから非標準の場所にインストールし、別のバージョンが通常の場所にインストールされている場合は、必ずこれを指定してください (つまり/path/to/my/python-config、上記の編集で使用し、引数PYTHON=/path/to/my/pythonconfigureスクリプトに渡します)。実際、正しい Python インタープリターを指定するだけで、含まれているconfigureスクリプトが正しく機能する可能性があります。

于 2013-07-03T13:51:36.310 に答える