当前位置:数据库 > SQLServer >>

Windows 64位下PostgreSQL的编译

Windows 64位下PostgreSQL的编译
 
  由于编译Windows下64位的PostgreSQL(下面简称PG),所需的依赖包,大部分无法直接使用,所以这里着重讲一下依赖包的编译过程(没有这些包也是可以完成编译的,但是这些辅助包能更好地将PG的)。
 
      一、编译环境:
 
            Windows 7 旗舰版 Service Pack 1,VS2008 Express版。
 
      二、所需下载的依赖包:            
 
            1、Perl:是一种脚本语言,在字符串匹配等方面有很突出的优点。
            2、Openssl:SSL是Secure Socket Layer(安全套接层协议)的缩写,可以在Internet上提供秘密性传输。
            3、Zlib:是一种事实上的业界标准,以至于在标准文档中,zlib和DEFLATE常常互换使用。数以千计的应用程序直接或间接依靠zlib压缩函式库。我所使用的是1.2.7,这里只有源码包,没有直接可用的,所以必须进行编译安装。安装过程如下:(1)打开VS 2008 x64命令提示 (2)进入zlib目录里边的masmx64目录下(C:\zlib-1.2.7\contrib\masmx64),运行bld_ml64.bat (3)进入zlib-1.2.7\contrib\vstudio\vc9\目录,用vs2008打开zlibvc.sln方案文件  (4)在工具栏中将“解决方案平台”改为“x64”,编译即可 (5)自己对生成好的文件进行拷贝,按照32位下的目录进行拷贝即可。         
            4、Libiconv:是一个基于GNU协议的开源库,主要是解决多语言编码处理转换等应用问题。这个依赖包需要和Gettext一起编译,编译过程如下:
(1)打开VS 2008 x64命令提示
(2)进入到Libiconv目录下运行命令:
 
         nmake -f Makefile.msvc NO_NLS=1 DLL=1 MFLAGS=-MD
 
         nmake -f Makefile.msvc NO_NLS=1 DLL=1 MFLAGS=-MD install
      
(3)编译Gettext,进入到Gettext目录下运行命令:
 
        nmake -f Makefile.msvc DLL=1 MFLAGS=-MD
 
        nmake -f Makefile.msvc DLL=1 MFLAGS=-MD install
(4)
 
        nmake -f Makefile.msvc DLL=1 MFLAGS=-MD
 
        nmake -f Makefile.msvc DLL=1 MFLAGS=-MD install
 
        5、Libxml:编译过程:(1)打开VS 2008 x64命令提示
(2)运行命令:cscript configure.js compiler=msvc prefix=c:\opt include=c:\opt\include lib=c:\opt\lib debug=yes (lib和include要将之前编译的Zlib和Libiconv放入,或者双击configure.js,生成configure.msvc,然后将Zlib和Libiconv的lib和include目录写明)(3) 运行命令:nmake /f Makefile.msvc (4)安装nmake /f Makefile.msvc install
 
        6、Gettext,在如上的步骤中已经完成了编译,但是PG需要libintl.lib文件,暂时未能对Libintl编译成功,在此就未进行赘述。
 
        三、编译PG:
 
        1、下载PG源码,我使用的是PG9.0.9。
        2、进行配置,在/src/tools/msvc/configure_defaul.pl,将之前所编译好的依赖包目录写入文件。
        3、由于Bison和Flex未能在Windows有效运行,在此需要在Linux生成.c文件后拷贝到windows下源码包内,需要拷贝的文件如下:
 
src\backend\bootstrap\bootparse.c 
src\backend\bootstrap\bootscanner.c 
src\backend\parser\gram.c 
src\backend\parser\scan.c 
src\backend\utils\misc\guc-file.c 
src\bin\psql\psqlscan.c 
contrib\cube\cubeparse.c 
contrib\cube\cubescan.c 
contrib\seg\segparse.c 
contrib\seg\segscan.c 
src\interfaces\ecpg\preproc\pgc.c 
src\interfaces\ecpg\preproc\preproc.c 
src\interfaces\ecpg\preproc\preproc.h 
src\pl\plpgsql\src\pl_gram.c 
src\pl\plpgsql\src\pl_gram.h  

 

 
          4、打开 VS2008 x64命令提示,进入到/src/tools/msvc/下,运行build.bat
          5、成功运行后,运行install.bat  "C:\pg9.0.9"(指定目录)
          6、至此PG在windows64位下安装完成。
Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,