Thread: an error while compiling psqlODBC on linux
Dear psgql-odbc community!
While following the instructions to compile psqlODBC from psqlodbc-13.02.0000.tar.gz ( I believe this is the latest version)
https://odbc.postgresql.org/docs/unix-compilation.html
I executed the configure command with the following flags:
./configure --with-unixodbc=/usr/local/unixODBC/bin --with-libpq=/usr/include/postgresql/libpq
And then, I end up with the following error while executing the make command
=====
odbcapi30.c:120:1: error: conflicting types for 'SQLColAttribute'; have 'SQLRETURN(void *, SQLUSMALLINT, SQLUSMALLINT, void *, SQLSMALLINT, SQLSMALLINT *, void *)' {aka 'short int(void *, short unsigned int, short unsigned int, void *, short int, short int *, void *)'}
120 | SQLColAttribute(SQLHSTMT StatementHandle,
| ^~~~~~~~~~~~~~~
In file included from psqlodbc.h:112,
from odbcapi30.c:21:
/usr/include/sql.h:613:24: note: previous declaration of 'SQLColAttribute' with type 'SQLRETURN(void *, SQLUSMALLINT, SQLUSMALLINT, void *, SQLSMALLINT, SQLSMALLINT *, SQLLEN *)' {aka 'short int(void *, short unsigned int, short unsigned int, void *, short int, short int *, long int *)'}
613 | SQLRETURN SQL_API SQLColAttribute(SQLHSTMT StatementHandle,
| ^~~~~~~~~~~~~~~
make[1]: *** [Makefile:811: psqlodbcw_la-odbcapi30.lo] Error 1
make[1]: Leaving directory '/home/quant/psqlodbc/psqlodbc-13.02.0000'
make: *** [Makefile:479: all] Error 2
=====
Would you be able to suggest anything to resolve this compilation error?
I believe I have all the prerequisites installed correctly.
psql –version
psql (PostgreSQL) 14.6 (Ubuntu 14.6-0ubuntu0.22.04.1)
I would be glad to provide additional details on request.
Thanks in advance,
Alexander