编译前准备
1.安装mingw
安装mingw(不管是直接安装mingw还是其他如code::blocks附带安装的mingw),输入:gcc -v可显示如下图的版本信息,我的版本是mingw32 4.9.2。
2. 安装postgresql
postgresql各个版本下地址:http://www.enterprisedb.com/products-services-training/pgdownload#windows
注意:要下载与mingw编译器对应的版本,如果是mingw32请下载32bit安装包或者编译包;如果是mingw64,请下载64bit安装包或者编译包。
libpqxx是基于libpq的C++实现,libpqxx对libpq的C-API进行了很好的封装,开发人员使用时可以节省大量的编码时间。如果觉得自己C水平不错,可以直接去使用libpq。
3.libpqxx编译
libpqxx下载地址:http://pqxx.org/download/software/libpqxx/
解压下载的文件后,进入目录libpqxx-4.0.1\win32,复制common-sample文件,修改文件名为common。
#PGSQLSRC="C:\Sources\postgresql-9.1.1\src"
PGSQLSRC="C:\Program Files (x86)\PostgreSQL\9.5"
#LIBPQINC=$(PGSQLSRC)\interfaces\libpq
#LIBPQPATH=$(PGSQLSRC)\interfaces\libpq\Release
#LIBPQDLL=libpq.dll
#LIBPQLIB=libpqdll.lib
LIBPQPATH=$(PGSQLSRC)\lib
LIBPQDLL=libpq.dll
LIBPQLIB=libpq.lib
#LIBPQDPATH=$(PGSQLSRC)\interfaces\libpq\Debug
#LIBPQDDLL=libpqd.dll
#LIBPQDLIB=libpqddll.lib
LIBPQDPATH=$(PGSQLSRC)\lib
LIBPQDDLL=libpq.dll
LIBPQDLIB=libpq.lib
将libpqxx-4.0.1\config\sample-headers\compiler\MinGW-3.4\pqxx\目录下的所有头文件拷贝到include\pqxx目录下;
将libpqxx-4.0.1\config\sample-headers\libpq\9.0\pqxx\目录下的所有头文件拷贝到include\pqxx目录下。
切换到libpqxx-4.0.1\目录下,运行命令:mingw32-make -f win32\MinGW.mak ALL。
安装postgresql时一定要安装与编译器对应的版本,否则编译时会报DLL引用错误