2.1开始
你要编译后的二进制代码放在 C:\PostgreSQL\8.0.0 这个目录中,仅此我是这么放的!
然后进入我们安装的MinGW的目录中,点击C:\msys\1.0\mys.bat 其实执行的是C:\msys\1.0\bin,当然这个我们不用去管它,我们编译自己的东西吧!
C:\msys\1.0\home\XXX [我的是Administrator]下面
执行下列命令:
cd ~
mkdir sources
mkdir sources/PostgreSQL
mkdir sources/PostGIS
mkdir sources/Geos
mkdir sources/Proj
mkdir /c/PostgreSQL
然后进入 c:\msys\1.0\home\XXX\sources
2.2下载 PostgreSQL 源代码 (8.0.0 version) 或者更高的版本
这里是8.0.0的下载地址 ftp://ftp2.fr.postgresql.org/pub/unix/postgresql/source/v8.0.0/postgresql-8.0.0.tar.gz
将你下载的代码放在 c:\msys\1.0\home\XXX\sources\PostgreSQL 这里。
进入msys然后执行:
cd ~/sources/PostgreSQL
tar xvzf postgresql-8.0.0.tar.gz
cd postgresql-8.0.0
configure --prefix=/c/PostgreSQL/8.0.0
make
make install
2.3.Geos and Proj
下载下面的软件 Geos and Proj
http://geos.refractions.net/geos-2.1.1.tar.bz2
ftp://ftp.remotesensing.org/proj/proj-4.4.9.tar.gz
把geos-2.1.1.tar.bz2和Proj-4.4.9.tar.gz 放在 c:\msys\1.0\home\XXX\sources\Geos 和c:\msys\1.0\home\XXX\sources\Proj
2.3.2. 编译
cd ~/sources/Geos
tar xvjf geos-2.1.1.tar.bz2
cd geos-2.1.1
configure --prefix=/c/PostgreSQL/8.0.0 && make && make install
cd ~/sources/Proj
tar xvzf proj-4.4.9.tar.gz
cd proj-4.4.9
configure --prefix=/c/PostgreSQL/8.0.0 && make && make install
还有可能需要ln这个命令进行映射,自己研究吧,详细的看编译的过程!
你必须建立两个(dll) 名字为: libproj.dll and libgeos.dll 在c:\PostgreSQL\8.0.0\lib 目录下cd /c/PostgreSQL/8.0.0/lib
g++ -shared -o libgeos.dll -Wl,--out-implib=libgeos.dll.a -Wl,--export-all-symbols -Wl,\
--enable-auto-import -Wl,--whole-archive libgeos.a -Wl,--no-whole-archive /c/mingw/lib/libmingw32.a
cd c/PostgreSQL/8.0.0/lib
gcc -shared -o libproj.dll -Wl,--out-implib=libproj.dll.a -Wl,--export-all-symbols -Wl,\
--enable-auto-import -Wl,--whole-archive libproj.a -Wl,--no-whole-archive /c/mingw/lib/libmingw32.a
开始安装PostGIS
进入msys然后执行下面的命令
cd ~/sources/PostGIS
tar xvzf postgis-1.0.0.tar.gzForm MinGW, do the followings
cd ~/sources/PostGIS/postgis-1.0.0
configure --enable-autoconf --with-geos=/c/PostgreSQL/8.0.0/bin/geos-config \
--with-proj=/c/PostgreSQL/8.0.0 \
--with-pgsql-src=/home/$USERNAME/sources/PostgreSQL/postgresql-8.0.0 --prefix=/c/PostgreSQL/8.0.0
Form MinGW, do the followings
cd ~/sources/PostGIS/postgis-1.0.0
configure --enable-autoconf --with-geos=/c/PostgreSQL/8.0.0/bin/geos-config \
--with-proj=/c/PostgreSQL/8.0.0 \
--with-pgsql-src=/home/$USERNAME/sources/PostgreSQL/postgresql-8.0.0 --prefix=/c/PostgreSQL/8.0.0
Form MinGW, do the followings
cd ~/sources/PostGIS/postgis-1.0.0
configure --enable-autoconf --with-geos=/c/PostgreSQL/8.0.0/bin/geos-config \
--with-proj=/c/PostgreSQL/8.0.0 \
--with-pgsql-src=/home/$USERNAME/sources/PostgreSQL/postgresql-8.0.0 --prefix=/c/PostgreSQL/8.0.0
$USERNAME - 就是你登陆的用户[windows平台]
继续执行下列命令:
cd ~/sources/PostGIS/postgis-1.0.0
make && make install
2.5.Commands summary
下面是利用脚本文件下载安装全过程,当然是建立在环境搭建好的基础上,不建议用这种安装,万一哪个地方弄错了,岂不是前功尽弃了!
下面是它饿下载路径http://gnuwin32.sourceforge.net/packages.html 'SetUp' 路径. 将它安装在c:\MinGW目录下
复制下面的脚本的内容放在这文件里install_all.sh script.将它移动到c:\msys\1.0\home\XXX 然后从MinGW执行这个脚本
下面是脚本代码:
export PGSQL_DIST=/c/PostgreSQL/8.0.0
cd ~
mkdir sources
mkdir sources/Geos
mkdir sources/Proj
mkdir sources/PostGIS
mkdir sources/PostgreSQL
mkdir $PGSQL_DIST/..
#
# PostgreSQL
#
cd ~/sources/PostgreSQL
wget ftp://ftp2.fr.postgresql.org/pub/unix/postgresql/source/v8.0.0/postgresql-8.0.0.tar.gz
tar xvzf postgresql-8.0.0.tar.gz
cd postgresql-8.0.0
configure --prefix=$PGSQL_DIST --enable-multibyte --with-CXX
make
make install
#
# Geos and Proj
#
cd ~/sources/Geos
wget http://geos.refractions.net/geos-2.1.1.tar.bz2
tar xvjf geos-2.1.1.tar.bz2
cd geos-2.1.1
configure --prefix=$PGSQL_DIST && make && make install
cd ~/sources/Proj
wget ftp://ftp.remotesensing.org/proj/proj-4.4.9.tar.gz
tar xvzf proj-4.4.9.tar.gz
cd proj-4.4.9
configure --prefix=$PGSQL_DIST && make && make install
#
# DLL creation
#
cd $PGSQL_DIST/lib
g++ -shared -o libgeos.dll -Wl,--out-implib=libgeos.dll.a -Wl,--export-all-symbols -Wl,\
--enable-auto-import -Wl,--whole-archive libgeos.a -Wl,--no-whole-archive /c/mingw/lib/libmingw32.a
cd $PGSQL_DIST/lib
gcc -shared -o libproj.dll -Wl,--out-implib=libproj.dll.a -Wl,--export-all-symbols -Wl,\
--enable-auto-import -Wl,--whole-archive libproj.a -Wl,--no-whole-archive /c/mingw/lib/libmingw32.a
#
# PostGIS
#
cd ~/sources/PostGIS
wget http://postgis.refractions.net/postgis-1.0.0.tar.gz
tar xvzf postgis-1.0.0.tar.gz
cd postgis-1.0.0
configure --enable-autoconf --with-geos=$PGSQL_DIST/bin/geos-config --with-proj=$PGSQL_DIST \
--with-pgsql-src=/home/$USERNAME/sources/PostgreSQL/postgresql-8.0.0 --prefix=$PGSQL_DIST
make && make install
postgresql编译结束
分享到:
相关推荐
windows下编译postgresql源码编译环境搭建
Qt 6.2.2 版本下编译的postgresql 14 驱动, 解压压缩包内的文件,拷贝到你的exe程序目录
windows下编译安装postgresql.docx windows下编译安装postgresql.docx windows下编译安装postgresql.docx
Qt 5.9.3 MySQL和PostgreSQL本地编译驱动,Qt自带的的MySQL和PostGreSQL驱动在程序出包后,报错:“Driver not loaded”,使用本地源码编译生成的驱动替换后即可正常连接数据库。
Linux环境PostgreSQL源码编译安装Linux环境PostgreSQL源码编译安装Linux环境PostgreSQL源码编译安装PostgreSQL版
在RK3568平台debian文件系统中编译的postgresql-12.2库,以及编译过程中所需要的依赖deb文件
postgresql &pg源码安装编译教程
详细描述了在Linux下编译postgresql和postgis源码的过程
postgresql14加postgis3.2在centos离线编译安装
Postgresql 9.1.3 在 windows编译
详细记录在Linux下源码编译安装PostgreSQL的过程与问题总结
使用qt 5.7 + postgresql 10 include lib编译的 qsqllpsql lib dll lib include文件为 postgresql 10头文件及库文件 根目录下的dll+qtplugins为qt中操作postgresql所需文件
解决QPSQL不存在的问题
本文档主要是让postgresql初学者顺利的在Redhat 6.8上顺利的编译安装postgresql数据库
在AIX环境下安装postgresql
编译和调试postgresql 用的,内部预先安装了所需的环境
服务器处于没有外网的情况下,如何安装PostgreSQL,并且通过PGADMIN访问
原因有两个方面,一个是本身像这种数据库服务器一般都是linux系统的,另外一个比较致命,zhparser本身并没提供windows环境下的编译工程,连依赖库scws的readme里也建议在linux环境下使用,或者用cygwin或mingw一类...
PostgreSQL(postgresql-14.1-1-osx.dmg)适用于Mac OS X PostgreSQL是一种特性非常...PostgreSQL支持大部分的SQL标准并且提供了很多其他现代特性,如复杂查询、外键、触发器、视图、事务完整性、多版本并发控制等。
资源名称:PostgreSQL 9从零开始学内容简介:PostgresQL9是一个开源的、全功能的对象关系型数据库。刘增杰、张少军编写的这本《PostgreSQL9从零开始学(视频教学版)》循序渐进地介绍了PostgresQL9数据库应用与开发的...