在Windows 7 x64上使用pgxnclient时,出现了找不到pg_config可执行文件的问题。

21
我安装了Python 2.7.8和pgxn客户端。我尝试从命令行的bin文件夹下运行该语句,并且路径设置正确。
pgxnclient install  http://api.pgxn.org/dist/pg_repack/1.2.1/pg_repack-1.2.1.zip

但是我遇到了一个错误找不到pg_config可执行文件


1
我不知道pgxn是否支持Windows。考虑到PGXS(扩展的编译系统)不支持Windows,我相当怀疑它能否为任何需要C编译的扩展工作。 - Craig Ringer
1
Mladen,你在尝试哪个操作系统?你需要可用的pg_config,以及安装了PostgreSQL头文件(如果从Linux包管理器安装,则通常需要-dev包)。如果您正在尝试在Windows上安装,那么pg_repack基本上未经测试/不支持Windows。 - Josh Kupershmidt
我正在使用问题中提到的Win 7 x64位操作系统。我只是在探索PostgreSQL。似乎在Linux上使用它是最好的方式。在2010年的zip文件中有一个项目,但我需要将其适配到我正在使用的PostgreSQL 9.3版本。这需要一些时间等待。 - Mladen Uzelac
@Mladen,如果您成功地在Visual 2010下为PG 9.3编译它,我会很感兴趣。 - JB.
我以前没有这样做,现在也没有计划。我在Linux上尝试了PostgreSQL,它的性能更好,使用起来更容易。将来我会使用更多运行在Linux上的软件。 ;) PS. 我花了很多时间来配置Visual Studio编译64位,我建议立即使用VS 2012。 - Mladen Uzelac
今天我成功地在Linux上编译并安装了这个扩展。 - Mladen Uzelac
3个回答

32

背景:pg_config是由PostgreSQL提供的配置实用程序。许多应用程序都使用此实用程序。

解决方案:

  1. 安装PostgreSQL
  2. 设置路径。系统属性 > 高级

    PATH:C:\Program Files (x86)\PostgreSQL\9.4\bin\;

从此刻开始,任何需要pg_config的应用程序都可以在这里找到它。

我建议使用此方法,因为构建直接来自作者。您还可以找到可行的独立pg_config构建替代方案。


1
感谢您的时间和努力。按照您说的进行了配置。但是在运行 pgxn 客户端时遇到了问题。我通过在 Linux 上运行解决了这个问题。PostgreSQL 在 Windows 上还可以,但在 Linux 上效果更佳 ;) - Mladen Uzelac

3
我遇到过相同的错误,而 pg_config 已经在我的路径中了。
你可以尝试以下方法: pgxnclient install --pg_config "c:\path\to\pg_config.exe" $extensionName 你几乎肯定需要以管理员身份运行 cmd.exe

这个有效了,谢谢。但是接着我遇到了一个gmake不可用的错误。我认为pgxnclient只能在Linux上运行...“Windows二进制版本在提交时自动构建”在https://github.com/pgxn/pgxn/wiki/PGXN-Wish-List上是愿望清单中的内容。 - Shmuel Kamensky

0

正确的语法

pgxnclient install --pg_config 'C:\Program Files\PostgreSQL\14\bin\pg_config.exe' quantile

1
这不就是与六年前Neil的答案(https://dev59.com/hl8d5IYBdhLWcg3wiSnI#37424294)基本相同的指导吗?只不过这里有一个具体的路径和扩展名,而Neil保持了他们的答案的一般性? - Jeremy Caney
当你说“正确的语法”时,是指之前的答案有错误吗?你使用了不同的引号,这是否有重要意义?请明确说明你建议做出的更改。 - joanis
它应该是完整的。 - M. Ilyas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接