Uso de libpq en VisualStudio (Windows)

Esta publicaci贸n no pretende nada, pero fue escrita por m铆 para ayudar a los mismos no programadores como yo. Quiz谩s, si hubiera le铆do la documentaci贸n de esta API por completo, este art铆culo no habr铆a sido necesario. Sin embargo, en mi defensa, dir茅 que no encontr茅 una instrucci贸n clara para tontos.





Me enfrent茅 a una serie de problemas al intentar conectar libpq en VS 2017: comenzando con la inconsistencia de la documentaci贸n para esta API con las instrucciones para conectarse, terminando con el valor predeterminado de algunos puntos clave.





En general, en orden.





Para utilizar esta API, necesita las siguientes bibliotecas y archivos:





  • libpq.dll y libpq.lib - la propia API La 煤ltima menci贸n en la documentaci贸n sobre la posibilidad de construirla para Windows se encuentra en la novena versi贸n. A los 10+, esto ya no existe. Por lo tanto, la forma m谩s f谩cil es hacer esto: instale postgresql de la versi贸n requerida y tome la carpeta PostgreSQL \ {n煤mero de versi贸n} \ lib desde all铆. Copie donde desee y en VS especifique en las propiedades del proyecto Propiedades de configuraci贸n> Directorios VC ++> Directorios de la biblioteca . A continuaci贸n, especificamos libpq.lib en Propiedades de configuraci贸n> Vinculador> Entrada> Dependencias adicionales .





  • libpq-fe.h: archivo de encabezado de API. Junto con todos los dem谩s archivos de encabezado, se encuentra en las fuentes de postgresql. Descargue la versi贸n requerida de postgresql desde el sitio externo ( https://ftp.postgresql.org/pub/source/v12.0/postgresql-12.0.tar.gz ). Los encabezados se encuentran en postgresql- {n煤mero de versi贸n} \ src \ interfaces \ libpq . Conectamos esta carpeta en Propiedades de configuraci贸n> Directorios VC ++> Directorios incluidos. Adem谩s, he incluido estos directorios aqu铆: "\ src \ include" "\ include \ libpq" "\ src \ interfaces" (por as铆 decirlo, solo para todos).





  • libintl-8.dll, libiconv-2.dll: se encuentran en la carpeta con postgres instalado ("PostgreSQL \ {n煤mero de versi贸n} \ bin"). Debe copiarlo en Windows \ system32 o en la carpeta con el archivo ejecutable ensamblado del programa.





  • libcrypto-1_1-x64.dll, libssl-1_1-x64.dll : bibliotecas OpenSSL. O lo ponemos (eligiendo durante la instalaci贸n, copiando las bibliotecas a la carpeta system32), o tomamos estas bibliotecas del openssl ya instalado (C: \ Program Files \ OpenSSL-Win64 \ bin) y las copiamos a la carpeta del programa o system32 Nosotros mismos.





    Luego hay un punto m谩s. En mi caso, la plataforma del proyecto ten铆a que ser x64.





    Eso es todo. Agregar #include <libpq-fe.h>



    al programa y trabajar












All Articles