win7 编译postgresql9.6.8

一、环境

windows7

postgresql9.6.8

vs2010

perl5.24.3

二、编译安装

1、安装perl,安装到C:Perl64路径下,安装完成后设置环境变量PATH和Perl5Lib。

如系统中有多个版本的perl,版本不对的话在执行build DEBUG时会出现如下错误

2、修改postgresql配置文件,否则会出现编译错误。修改内容如下:

D:pgpostgresql-9.6.8src oolsmsvcMkvcbuild.pm文件中87行注释掉,增加88行

3、修改D:pgpostgresql-9.6.8srcackendmainmain.c文件,注释掉197行check_root(progname);

4、用vs打开D:pgpostgresql-9.6.8srcfe_utilsprint.c文件,将文件编码改为

5、用vs的cmd工具,在D:pgpostgresql-9.6.8src oolsmsvc路径下执行build  DEBUG

 编译完成后如出现如下提示,则编译成功

执行install D:pgpgsql命令进行安装

6、进入D:pgpgsql安装目录,创建data文件夹,并设置PGDATA和PATH环境变量,然后执行initdb.exe -D D:pgpgsqldata命令

     完成数据库的初始化,如下图所示

7、启动数据库

8、连接数据库,并执行select version()命令

 三、vs调试postgresql

1、到pg源码目录下用vs打开pgsql.sln

2、修改pg_config_paths.h文件,修改后的内容如下

3、设置postgres项目属性,并设置为启动项目。

 4、vs上执行F5,启动postgres服务,客户端通过以下目录获取后台进程ID号

5、在vs界面上将postgres进程id号为6572的进程附加到vs中

 

 6、设置断点

 7、客户端执行sql命令即可进入断点调试

参考链接:1 2 3 4 5 6

原文地址:https://www.cnblogs.com/mxly/p/9492529.html