最新消息:20210816 当前crifan.com域名已被污染,为防止失联,请关注(页面右下角的)公众号

【已解决】Windows下通过源码安装PyGreSQL,运行setup.py build或setup.py install出错:Exception: pg_config tool is not available

Python crifan 4545浏览 0评论

【问题】

折腾:

【记录】使用Python操作PostgreSQL数据库

期间,需要通过源码去安装PyGreSQL。

所以就去下载http://pygresql.org/files/PyGreSQL.tgz,解压,运行安装,结果出错:

D:\tmp\dev_tools\python\PyGreSQL\PyGreSQL-4.0>setup.py install
Traceback (most recent call last):
  File "D:\tmp\dev_tools\python\PyGreSQL\PyGreSQL-4.0\setup.py", line 94, in <module>
    pg_include_dir = pg_config('includedir')
  File "D:\tmp\dev_tools\python\PyGreSQL\PyGreSQL-4.0\setup.py", line 56, in pg_config
    raise Exception("pg_config tool is not available.")
Exception: pg_config tool is not available.

D:\tmp\dev_tools\python\PyGreSQL\PyGreSQL-4.0>

也试了试:

D:\tmp\dev_tools\python\PyGreSQL\PyGreSQL-4.0>setup.py build
Traceback (most recent call last):
  File "D:\tmp\dev_tools\python\PyGreSQL\PyGreSQL-4.0\setup.py", line 94, in <module>
    pg_include_dir = pg_config('includedir')
  File "D:\tmp\dev_tools\python\PyGreSQL\PyGreSQL-4.0\setup.py", line 56, in pg_config
    raise Exception("pg_config tool is not available.")
Exception: pg_config tool is not available.

很明显,是同样的错误。

【解决过程】

1. 所以再去参考:

http://www.pygresql.org/install.html

去下载安装Distutils,发现貌似Distutils是Python内置的,也就是直接install就可以了。

2.网上找了一堆该问题,但是还是没有找到解决办法。

3.后来参考:

[Tutor] Problems install Python

看起来像是,pg_config是PostgresQL安装完毕,就会存在的一个工具或接口。

所以,貌似是我此处的PostgreSQL没有正常安装成功,或者安装了,但是没有添加环境变量之类的原因,而导致了找不到pg_config。

但是我之前是正常的,成功的安装了PostgreSQL的啊:

has install postgresql

4.想到了,去找找pg_config是啥东西。

然后从这里得知,其是一个配置工具:

pg_config

Name

pg_config — retrieve information about the installed version of PostgreSQL

看来,此处还是postgreSQL没有安装好,或者是环境变量没有添加好。

5.然后从上面的pgAdmin III,找到对应的可执行文件的路径为:

D:\tmp\dev_install_root\PostgreSQL\8.3\bin\pgAdmin3.exe

在同文件夹下,看到了pg_config.exe。

所以,应该就环境变量没有添加好。去把

D:\tmp\dev_install_root\PostgreSQL\8.3\bin

添加到PATH中去。

6.果然,重启cmd,再去执行,就可以消除此错误了:

D:\tmp\dev_tools\python\PyGreSQL\PyGreSQL-4.0>setup.py build
running build
running build_py
creating build
creating build\lib.win32-2.7
copying pg.py -> build\lib.win32-2.7
copying pgdb.py -> build\lib.win32-2.7
running build_ext
building '_pg' extension
error: Unable to find vcvarsall.bat

只不过又是出现其他问题而已,待后续解决。

 

【总结】

运行setup.py build/install去从源码方式安装PyGreSQL时,出现:

Exception: pg_config tool is not available

的错误,是由于没有找到pg_config。

而找不到pg_config原因,有两种可能:

1,的确没有安装PostgreSQL,所以没有对应的工具pg_config

2. 安装了PostgreSQL,但是没有把相应的bin路径添加到环境变量PATH中去。

我此处是第二种原因,所以去把相应的bin路径:

D:\tmp\dev_install_root\PostgreSQL\8.3\bin

添加到PATH中,再重启cmd运行setup.py build,就可以消除此错误了。

 

看来,从官网下载的PostgreSQL安装包,还是有问题,做的不够好啊,导致正常安装之后,都没有把相应的bin路径添加到PATH中,才导致此处遇到这样的错误的。

转载请注明:在路上 » 【已解决】Windows下通过源码安装PyGreSQL,运行setup.py build或setup.py install出错:Exception: pg_config tool is not available

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
89 queries in 0.187 seconds, using 22.12MB memory