我正在尝试从源代码构建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
但它仍无效。
由于
答案 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);再次,请参阅版本政策。