5

easy_install を使用して MySQL-python をインストールしようとしています。ほとんどすぐに失敗します。

_mysql.c:36:23: エラー: my_config.h: そのようなファイルまたはディレクトリはありません
_mysql.c:38:19: エラー: mysql.h: そのようなファイルまたはディレクトリはありません
_mysql.c:39:26: エラー: mysqld_error. h: そのようなファイルまたはディレクトリはありません
_mysql.c:40:20: エラー: errmsg.h: そのようなファイルまたはディレクトリはありません

ヘッダーが見つかりません。ヘッダーをインストールしました。/opt のソースからインストールしただけです。明らかにそこを見ていません。どうすればそこに見えるようになりますか?たとえば、これが構成の場合、「--with-mysql=/opt/mysql」のようなことができます。easy_install にそのようなオプションがあるようには見えません。まだ調査中なので、答えが見つかったらここに投稿します。

4

2 に答える 2

5

これは、easy_installの問題というよりも、コンパイラの検索パスの問題のように見えます。

easy_install呼び出しが機能する前に、インクルードパス環境変数を設定します。

C_INCLUDE_PATH=/path/to/your/mysql/include/files easy_install intall MySQL-python

それでも問題が解決しない場合は、INCLUDE_PATH変数またはCPLUS_INCLUDE_PATH変数を設定してみてください。質問には、使用されているコンパイラを示すのに十分なeasy_install出力がありませんでした。

于 2011-01-21T00:32:39.160 に答える
3

easy_installこれは、インストールしようとしているディストリビューション内のファイルsetup.pyを尊重します。setup.py オプションを直接 easy_install にsetup.cfg指定することはできませんが、setup.cfg ファイルに入れることはできます。--include_dirs--library_dirs

pysqlite にも同様の問題があります。SQLite を非標準の場所に置き、easy_install を使用して Python バインディングを取得したかったのです。pysqlite ディストリビューションには、サンプルの include_dirs および library_dirs ディレクティブを含む setup.cfg ファイルが含まれているため、何をすべきかは明らかでした。

MySQL-python に setup.cfg ファイルがある場合は、それを追加/編集して含めることができます。

[build_ext]
include_dirs = /path/to/headers
library_dirs = /path/to/libs

setup.cfg ファイルに既に[build_ext]セクションがある場合は、2 つ目のセクションを作成する代わりに、セクションに追加します。

于 2012-01-20T16:06:11.413 に答える