admin管理员组

文章数量:1613061

针对X64的libpqxx库进行编译,编译环境为windows10、VS2017、PostgreSQL11。

参考博客:http://www.cppblog/deajosha/archive/2015/11/07/211146.html


目录

一、libpqxx简介

二、libpqxx环境搭建

2.1 下载及安装

2.2 编译

2.2.1 文本替换工作

2.2.2 头文件拷贝工作

2.2.3 编译工作


一、libpqxx简介

libpqxx是官方发布基于C++语言操作PostgreSQL的API库,简单地讲就是用C++来操作PostgreSQL数据库。

二、libpqxx环境搭建

2.1 下载及安装

 1、PostgreSql下载并安装

        (1)Windows版本地址:https://www.enterprisedb/downloads/postgres-postgresql-downloads

        (2)PostgreSQL安装:具体安装参见安装教程,注意记下安装路径,后面要用到,这里推荐默认路径。

2、libpqxx下载

        (1)这里主要是使用GitBash进行下载,在GitBash中使用以下命令:

git clone https://github/jtv/libpqxx

        (2)或者直接在这里Clone or Download下载安装包:https://github/jtv/libpqxx

2.2 编译

2.2.1 文本替换工作

1、解压下载下来的libpqxx压缩包,在文件夹win32中用记事本打开common-sample,然后将文件另存再win32文件夹中一份,命名为common;

2、再使用记事本打开common文件,修改PGSQLSRC的值为PostgreSql安装的根目录(安装路径),比如我的电脑按默认安装是PGSQLSRC=C:\Program Files\PostgreSQL\11

3、把LIBPQINC=$(PGSQLSRC)\interfaces\libpq注释掉(语句前加个#),然后再取消LIBPQINC=$(PGSQLSRC)\include的注释;

 

4、把LIBPQPATH=$(PGSQLSRC)\interfaces\libpq\Release

                LIBPQDLL=libpq.dll

                LIBPQLIB=libpqdll.lib 注释掉,
             取消掉
                LIBPQDPATH=$(PGSQLSRC)\lib

                LIBPQDDLL=libpq.dll

                LIBPQDLIB=libpq.lib 的注释;

 

5、把 LIBPQDPATH=$(PGSQLSRC)\interfaces\libpq\Debug

                  LIBPQDDLL=libpqd.dll

                  LIBPQDLIB=libpqddll.lib 注释掉,
             取消掉
                  LIBPQDPATH=$(PGSQLSRC)\lib

                  LIBPQDDLL=libpq.dll

                  LIBPQDLIB=libpq.lib 的注释;

 

2.2.2 头文件拷贝工作

1、将libpqxx\config\sample-headers\compiler\VisualStudio2017\pqxx\目录下的所有头文件拷贝到include\pqxx目录下;

2、[可选]如果不冲突也可以将libpqxx\config\sample-headers\compiler\目录文件夹下的都有头文件都拷贝到include\pqxx目录下;

 

2.2.3 编译工作

本文测试了Windows10环境下编译为X64的libpqxx,X32位的没有尝试过,大家有兴趣可以看我这篇文章的参考博客进行尝试,推荐X64位吧。

1、系统中查找nmake.exe,拷贝下这个位置;

2、选择对应的VS2017命令行并系统管理员身份运行;

3、定位到libpgxx根目录下,使用cd命令,见下图:

4、然后输入以下命令进行编译,格式写为:<"nmake.exe所在文件夹> <\nmake.exe"> < /f  win32/vc-libpqxx.mak ALL.>

      例如我的电脑输入和截图如下:

"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64\nmake.exe" /f  win32/vc-libpqxx.mak ALL.

 

5、编译成功后会产生一个lib目录,里面保存着静态链接库的debug/release及动态链接库的debug/release文件。

 

 更多的说明请参照win32目录下的common文件,INSTALL.TXT 及vc-libpgxx.mak,如果在编译X64位库的过程中有任何疑问欢迎讨论。

 

 

本文标签: 环境Windowslibpqxx