Postgresql 8.3.1中的pg_config

时间:2012-10-15 20:38:20

标签: postgresql

我正在尝试从源代码构建Postgresql 8.3.1(后来我需要在它的顶部运行扩展补丁)。然而,src/tutorial没有做出

$make
make: pg_config: Command not found
make: *** No targets.  Stop.

我去了安装的bin目录,我在那里找到pg_config.exe,我需要帮助才能让配置检测到它。

我尝试过类似的事情:

./configure --with-pg-config=path/pgsql/bin
 make
 make install

但它仍无效。

由于

1 个答案:

答案 0 :(得分:3)

在运行pg_config之前,您需要确保PATH位于可执行搜索路径 - configure环境变量上。

看起来你可能正在使用带有msys的MinGW,在这种情况下你可以使用Andrew提出的语法。但是,根据the documentation,PostgreSQL可执行文件的位置可能在msys上有点奇怪。 UNIX路径中包含冒号,因此它们不能包含c:\之类的驱动器说明符,因此MinGW会将驱动器号“挂载”为根目录条目,如/c。因此,对于c:\Program Files\PostgreSQL 8.3\bin,您将使用:

"/c/Program Files/PostgreSQL 8.3/bin/pg_config.exe"

请注意双引号。尝试在msys中将其作为命令运行,看看会发生什么。如果您输出的pg_config不是错误,请将其添加到PATH并添加:

export PATH="$PATH:/c/Program Files/PostgreSQL 8.3/bin"

如果你在Cygwin上,那么:

  • 这不是一个理想的环境,半窗,半unix。考虑MinGW + msys,或根据Installing from Source Code on Windows使用Windows Platform SDK编译器和Windows构建脚本本地编译PostgreSQL。

  • Cygwin还将C:\安装为/c/,因此上面的路径应该与Cygwin一样有用。

如果你清楚地提到这一点会更容易:

  • 您的操作系统
  • 您的编译器和工具集

此外,a_horse_with_no_name非常正确:现在安装PostgreSQL 8.3.1只是疯了。绝对最低限度你应该在编写时安装8.3.21的当前版本8.3.21。根据{{​​3}},这与所有8.3.x版本完全兼容。然后你应该开始紧急准备,在8.3关闭之前更新到9.2(如果你坚持的话,还是9.1);再次,请参阅版本政策。