[unixODBC-support] unixODBC and Informix

Don_Arnett at ned.uscourts.gov Don_Arnett at ned.uscourts.gov
Tue Jul 8 18:45:03 BST 2008


I tried "ldd /opt/IBM/informix/lib/esql/igo4a304.so".  The first time I 
got an error about execute permissions.  After changing the permissions on 
igo4a304.so to 755, the output is:

> ldd /opt/IBM/informix/lib/esql/igo4a304.so
        linux-gate.so.1 =>  (0xffffe000)
        libc.so.6 => /lib/libc.so.6 (0xb7e73000)
        /lib/ld-linux.so.2 (0x80000000)


I'm assuming that your 'strace' suggestion was related to why 
/etc/unixODBC/odbc.ini is being used rather than /etc/odbc.ini.  At this 
point, I don't care which odbc.ini is being used, as long as I know which 
one to use.


Regarding the igo4a304.so failure to load, the strace returned:

open("/opt/IBM/informix/lib/esql/igo4a304.so", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\370\20"..., 512) 
= 512
fstat64(3, {st_mode=S_IFREG|0766, st_size=15787, ...}) = 0
mmap2(NULL, 16032, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7fd4000
madvise(0xb7fd4000, 16032, MADV_SEQUENTIAL|0x1) = 0
mmap2(0xb7fd7000, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2) = 0xb7fd7000
close(3)                                = 0
munmap(0xb7fd4000, 16032)               = 0
open("/opt/IBM/informix/msg/clixmsg.pam", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=3715, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) 
= 0xb7fd7000
read(3, "itox00\0\0\1\35\0\0\0d\0\0\214\24702000\0\0\0\0\0\0\214"..., 
4096) = 3715
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0xb7fd7000, 4096)                = 0
access("/opt/IBM/informix/msg/en_us/0333/cli.iem", R_OK) = 0
open("/opt/IBM/informix/msg/en_us/0333/cli.iem", O_RDONLY|O_LARGEFILE) = 3
read(3, "\376h\0\324", 4)               = 4
_llseek(3, 844, [844], SEEK_SET)        = 0
read(3, "\324\236\0000\0\0\23\3\324\237\0\31\0\0\22\351\324\240"..., 64) = 
64
_llseek(3, 1300, [1300], SEEK_SET)      = 0
read(3, "\324\327\0\33\0\0\f\325\324\330\0001\0\0\f\243\324\331"..., 64) = 
64
_llseek(3, 3235, [3235], SEEK_SET)      = 0
read(3, "Unable to load translation share"..., 49) = 49
fstat64(1, {st_mode=S_IFREG|0644, st_size=51734, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) 
= 0xb7fd7000
write(2, "[ISQL]ERROR: Could not SQLConnec"..., 34[ISQL]ERROR: Could not 
SQLConnect
) = 34
write(1, "[IM009][unixODBC][Informix][Info"..., 
98[IM009][unixODBC][Informix][Informix ODBC Driver]Unable to load 
translation shared library (DLL).
) = 98
exit_group(1)                           = ?
Process 7709 detached


It appears to read the igo4a304.so file, then clixmsg.pam and while 
reading en_us/0333/cli.iem, it pulls out the "Unable to load translation 
..." message.  I don't understand the output enough to see why it's coming 
up with the error. 

I verified that the en_us/0333/cli.iem file does exist. 

I don't know anything about Locales.  How can I find out what mine is set 
to or should be?


Thanks

Don Arnett
Programmer/Analyst
U.S. Courts - District of Nebraska
don_arnett at ned.uscourts.gov
1-402-661-7394



Nick Gorham <nick.gorham at easysoft.com> 
Sent by: unixodbc-support-bounces at easysoft.com
07/08/2008 12:15 PM
Please respond to
Support for the unixODBC project <unixodbc-support at easysoft.com>


To
Support for the unixODBC project <unixodbc-support at easysoft.com>
cc

Subject
Re: [unixODBC-support] unixODBC and Informix






Don_Arnett at ned.uscourts.gov wrote:

>I've determined that even tho $ODBCINI is pointing to /etc/odbc.ini, 
>./isql is using /etc/unixODBC/odbc.ini.  Once I moved odbc.ini to 
>/etc/unixODBC, I got a different error.  Oddly, it appears to want the 
>odbcinst.ini in /etc/ rather than /etc/unixODBC.
>
>After adding /opt/IBM/informix/lib/esql to ld.so.conf, the error is now:
>
>[IM009][unixODBC][Informix][Informix ODBC Driver]Unable to load 
>translation shared library (DLL).
>[ISQL]ERROR: Could not SQLConnect
>
>My odbc.ini file contains the line 
>"TRANSLATIONDLL=/opt/IBM/informix/lib/esql/igo4a304.so" and the 
permission 
>of the file are "755 informix informix".
>
>I get the same error if I remove the TRANSLATIONDLL line from the 
odbc.ini 
>file.
>
>
>Thanks
>
>
>
>Don Arnett
>Programmer/Analyst
>U.S. Courts - District of Nebraska
>don_arnett at ned.uscourts.gov
>1-402-661-7394
> 
>
>------------------------------------------------------------------------
>
Try a

ldd /opt/IBM/informix/lib/esql/igo4a304.so

to see if there is any reason why its failing.

Also try using strace to see what odbc.ini is being read after the 
driver is loaded.

Did you export ODBCINI after setting it?

-- 
Nick Gorham
Easysoft Limited
http://www.easysoft.com, http://www.unixODBC.org

_______________________________________________
unixODBC-support mailing list
unixODBC-support at easysoft.com
http://mail.easysoft.com/mailman/listinfo/unixodbc-support

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.unixodbc.org/pipermail/unixodbc-support/attachments/20080708/bf508f10/attachment.html>


More information about the unixODBC-support mailing list