Easysoft Data Access

Why do I get error "Initialization function SQLAllocConnect not found" when using Oracle® Heterogenous Services (hsODBC) on AIX?

Article:
00916
Last Reviewed:
11th June 2013
Revision:
5

Assumptions:

On AIX, this problem occurs because hsODBC is linked against libodbc.so but the unixODBC you are using contains libodbc.so.1 in the libodbc.a archive. To check this:

  1. cd /usr/local/easysoft/unixODBC/lib

    -or-

    cd /lib

    -or-

    cd unixODBC_install_dir
  2. ar -X32_64 -tv libodbc.a

If this shows the archive contains libodbc.so.1 this is your problem and the solution is:

  1. Become root or whoever you need to be to create files in the unixODBC lib subdirectory.
  2. cd /usr/local/easysoft/unixODBC/lib

    -or-

    cd /lib

    -or-

    cd unixODBC_install_dir
  3. ar -X32_64 -xv libodbc.a

    This should extract the file libodbc.so.1 to the current directory.

  4. Rename libodbc.so.1:
    mv libodbc.so.1 libodbc.so
  5. Point HSODBC at it directly by amending the HS_FDS_SHAREABLE_NAME in your init[name].ora file to be:
    HS_FDS_SHAREABLE_NAME = /usr/local/easysoft/unixODBC/lib/libodbc.so

Restart your Oracle® listener. Your link should now work.

Applies To

Knowledge Base Feedback

* Did this content help you?
* Please select one option based on your first choice:

(* Required Fields)


Oracle is a registered trademark of Oracle Corporation and/or its affiliates.