It's all about the answers!

Ask a question

64-bit ODBC driver support for Linux?


Jackie Albert (1.6k14946) | asked Jun 18 '11, 3:06 p.m.
I'm using Insight 1.0.1 with iFix 1 on a 64-bit Linux system, with a DB2 database. For my ODBC driver manager I'm using unixODBC 2.2.14.

As referenced in the install doc here - http://publib.boulder.ibm.com/infocenter/rentrpt/v1r0m1/topic/com.ibm.rational.raer.deploying.doc/topics/t_postreq_repserver_db2_instauto_cmseparate_rhel5.html#t_configodbcjdbc - I'm using the 32 bit driver manager.

I've also configured odbcinst.ini to use Driver=/opt/ibm/RationalInsight/etl/odbc/libratlxml.so

However, when trying to connect to RQM I get this error:

isql -v RQM

[01000][unixODBC][Driver Manager]Can't open lib '/opt/ibm/RationalInsight/etl/odbc/libratlxml.so' : /opt/ibm/RationalInsight/etl/odbc/libratlxml.so: wrong ELF class: ELFCLASS32
[ISQL]ERROR: Could not SQLConnect


Does anyone have thoughts or suggestions on what I have configured incorrectly? Thanks!

4 answers



permanent link
li yaqiang (19423) | answered Jun 20 '11, 10:47 p.m.
Install the unixODBC on the 64bit system must followed these steps:

1) Prepare Flags for compilation
Run "./configure" command to generate libtool file.

Modify File libtool: change entry "-shared" to "-shared -m32"; first two occurences

=======================================================================
2) Set Flags & configure
export CFLAGS=-m32 LDFLAGS=-m32 CXXFLAGS=-m32
make
make install

I'm using Insight 1.0.1 with iFix 1 on a 64-bit Linux system, with a DB2 database. For my ODBC driver manager I'm using unixODBC 2.2.14.

As referenced in the install doc here - http://publib.boulder.ibm.com/infocenter/rentrpt/v1r0m1/topic/com.ibm.rational.raer.deploying.doc/topics/t_postreq_repserver_db2_instauto_cmseparate_rhel5.html#t_configodbcjdbc - I'm using the 32 bit driver manager.

I've also configured odbcinst.ini to use Driver=/opt/ibm/RationalInsight/etl/odbc/libratlxml.so

However, when trying to connect to RQM I get this error:

isql -v RQM

[01000][unixODBC][Driver Manager]Can't open lib '/opt/ibm/RationalInsight/etl/odbc/libratlxml.so' : /opt/ibm/RationalInsight/etl/odbc/libratlxml.so: wrong ELF class: ELFCLASS32
[ISQL]ERROR: Could not SQLConnect


Does anyone have thoughts or suggestions on what I have configured incorrectly? Thanks!

permanent link
Omprakash Thammishety (1461178) | answered Jun 24 '11, 12:11 p.m.
You can try below steps. It worked for me.

1. 32bit unixODBC is required, either v2.2.14 or 2.3.0
(this requires some additional OS packages for x86_64, such as glibc-devel-2.5-58.i386.rpm for RHEL 5.6)

2. LD_LIBRARY_PATH=/opt/ibm/RationalInsight/cognos/bin:/opt/ibm/RationalInsight/AppServer/java/jre/bin:/usr/local/lib:/opt/ibm/RationalInsight/etl/odbc/lib

so that our 32bit XML ODBC Driver (/opt/ibm/RationalInsight/etl/odbc/libratlxml.so in your env) can be loaded properly.

permanent link
Jackie Albert (1.6k14946) | answered Jun 27 '11, 10:51 a.m.
Othamset, those steps work for me on a 32-bit Linux system, but on the 64-bit system I get:


bash-3.2# isql -v RQM
[01000][unixODBC][Driver Manager]Can't open lib '/opt/ibm/RationalInsight/etl/odbc/libratlxml.so' : /opt/ibm/RationalInsight/etl/odbc/libratlxml.so: wrong ELF class: ELFCLASS32
[ISQL]ERROR: Could not SQLConnect


Li Yaqiang, I tried your steps but the 'make' step is failing.


/bin/sh ../libtool --tag=CC --mode=link gcc -g -O2 -DENABLE_INI_CACHING -pthread -o isql isql.o ../DriverManager/libodbc.la ../extras/libodbcextraslc.la -lpthread
gcc -g -O2 -DENABLE_INI_CACHING -pthread -o .libs/isql isql.o ../DriverManager/.libs/libodbc.so -ldl ../extras/.libs/libodbcextraslc.a -lpthread
../DriverManager/.libs/libodbc.so: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make[1]: *** [isql] Error 1
make[1]: Leaving directory `/tmp/unixODBC/unixODBC-2.2.14/exe'
make: *** [all-recursive] Error 1

permanent link
Jackie Albert (1.6k14946) | answered Jun 28 '11, 3:40 p.m.
Just FYI to those reading, I was able to get this resolved using the following steps:

configure --enable-gui=no CFLAGS=-m32 LDFLAGS=-m32 CXXFLAGS=-m32

make
make install


As I mentioned before, updating the libtool caused errors, but this way I was able to proceed and can now connect to RQM via ODBC.

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.