public inbox for pgsql-odbc@postgresql.org  
help / color / mirror / Atom feed
From: hlloo@hko.gov.hk
To: pgsql-odbc@postgresql.org
Cc: H Loo <hildaloo2011@gmail.com>
Cc: LingLoo Hing <hlloo@hko.gov.hk>
Subject: AIX 7.2 install psqlodbc with error
Date: Fri, 31 Oct 2025 17:09:27 +0800
Message-ID: <OF59393BD8.3F0AE6EB-ON48258D34.000AC6BC-48258D34.00324E12@Not_For_Reply_From_Internet.hksarg.hk> (raw)

Dear Guru,

The issue happened  when I do below with 'Illegal instruction(coredump): 

>isql -v test_pg
Illegal instruction(coredump)

>odbcinst -j
unixODBC 2.3.9
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /etc/odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
Illegal instruction(coredump)


My Questions: 
1. Does psqlodbc is not supported to  install or use with AIX 64bit server 
as remote connecting to other postgres server?
2. My download of psqlodbc is wrong?
3. Any clues my steps in-correct or any good way to install psqlodbc ? (I 
eventally need this driver to configure AIX oracle DBlink to read Postgres 
Data) 


Below are the setup step I did: 

I download psqlodbc-13.02.0000.tar.gz from 
https://ftp.postgresql.org/pub/odbc/versions.old/src/psqlodbc-13.02.0000.tar.gz 


cd  psqlodbc-13.02.0000
chown -R root:system *

autoconfig -i

./configure ODBCVER=0x0351 CPPFLAGS="-DSQLCOLATTRIBUTE_SQLLEN" 
--with-libpq=/usr/local/pgsql --with-unixodbc=/opt/freeware/bin 
--disable-dependency-tracking --prefix=/usr/local \
 --build=powerpc-ibm-aix --host=powerpc-ibm-aix CC="gcc -maix64" CXX="g++ 
-maix64"

...
checking for library containing SQLGetPrivateProfileString... -lodbcinst
checking for pthread_create in -lpthreads... yes
checking for PQsetSingleRowMode in -lpq... no
configure: error: libpq library version >= 9.2 is required  <==== [found 
no solution to fix error like this]


Thus, then try manual compile: 

# Build object files individually
for file in *.c; do
    if [ "$file" != "odbcapi30.c" ]; then
        gcc $CFLAGS -c -fPIC $file -o ${file%.c}.o
    fi
done
gcc $CFLAGS -DSQLColAttribute=my_SQLColAttribute -c -fPIC odbcapi30.c -o 
odbcapi30.o
gcc -maix64 -shared -o psqlodbc.so *.o $LDFLAGS $LIBS -Wl,-G -Wl,-brtl

>ls psqlodbc*
psqlodbc.c       psqlodbc.def     psqlodbc.dsp     psqlodbc.h psqlodbc.o   
 psqlodbc.rc      psqlodbc.reg     psqlodbc.sln     psqlodbc.so 
psqlodbc.vcproj  psqlodbca.def



My environment

I target to have psqlodbc installing to AIX7.2: 

>oslevel -s
7200-04-02-2028

>prtconf -c
CPU Type: 64-bit

>bootinfo -K
64

ODBC driver version 2.3.9 
PostgreSQL version 11.9

Due to AIX 7.2 available psqlodbc that I can find and trying the download 
psqlodbc-13.02.0000 download



Currently has unixodbc installed and OK to use. 




resulted coredump 




>file /oracle/psqlodbc-13.02.0000/psqlodbc.so
/oracle/psqlodbc-13.02.0000/psqlodbc.so: 64-bit XCOFF executable or object 
module not stripped
~root@gapoc1:/oracle/psqlodbc-13.02.0000~




>dump -Hv -X64 /oracle/psqlodbc-13.02.0000/psqlodbc.so

/oracle/psqlodbc-13.02.0000/psqlodbc.so:

                        ***Loader Section***
                      Loader Header Information
VERSION#         #SYMtableENT     #RELOCent        LENidSTR
0x00000001       0x00000268       0x0000063b       0x00000096

#IMPfilID        OFFidSTR         LENstrTBL        OFFstrTBL
0x00000007       0x00009da8       0x00002bca       0x00009e3e


                        ***Import File Strings***
INDEX  PATH                          BASE                MEMBER
0      /opt/freeware/lib:/usr/lib:/lib
1                                    libpq.a             libpq.so.5
2                                    libodbc.a           libodbc.so.2
3                                    libodbcinst.a       libodbcinst.so.2
4                                    libgcc_s.a          shr.o
5                                    libc.a              shr_64.o
6                                    ..
~root@gapoc1:/oracle/psqlodbc-13.02.0000~
>



>ldd /oracle/psqlodbc-13.02.0000/psqlodbc.so
/oracle/psqlodbc-13.02.0000/psqlodbc.so needs:
         /opt/freeware/lib/libpq.a(libpq.so.5)
         /opt/freeware/lib/libodbc.a(libodbc.so.2)
         /opt/freeware/lib/libodbcinst.a(libodbcinst.so.2)
         /opt/freeware/lib/libgcc_s.a(shr.o)
         /usr/lib/libc.a(shr_64.o)
         /opt/freeware/lib/libtcl8.6.a(libtcl8.6.so)
         /opt/freeware/lib/libldap_r.a(libldap_r-2.4.so.2)
         /opt/freeware/lib/libintl.a(libintl.so.8)
         /usr/lib/libpthreads.a(shr_xpg5_64.o)
         /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2)
         /opt/freeware/lib/libssl.a(libssl.so.1.0.2)
         /opt/freeware/lib/libiconv.a(libiconv.so.2)
         /usr/lib/libpthread.a(shr_xpg5_64.o)
         /unix
         /usr/lib/libcrypt.a(shr_64.o)
         /usr/lib/libdl.a(shr_64.o)
         /opt/freeware/lib/liblber.a(liblber-2.4.so.2)
         /opt/freeware/lib/libsasl2.a(libsasl2.so.3)
         /usr/lib/libs.a(shr_64.o)
~root@gapoc1:/oracle/psqlodbc-13.02.0000~

I very appreciate you shed a light to this issue. 

Regards
Hilda 


reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-odbc@postgresql.org
  Cc: hlloo@hko.gov.hk, hildaloo2011@gmail.com
  Subject: Re: AIX 7.2 install psqlodbc with error
  In-Reply-To: <OF59393BD8.3F0AE6EB-ON48258D34.000AC6BC-48258D34.00324E12@Not_For_Reply_From_Internet.hksarg.hk>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox