Why do I get error "Generic Connectivity Using ODBC][C077] Could not find symbol 'SQLAllocConnect' in dynamic library"?

The full text of the error reported to us was:

Error : ORA-28500: connection from ORACLE to a non-Oracle system returned this
message: Generic Connectivity Using ODBC][C077] Could not find symbol
'SQLAllocConnect' in dynamic library

This error usually occurs for one of the following reasons:

  1. Library search path is not set for your Easysoft ODBC driver.

    On the machine where the Easysoft ODBC driver is installed, the library search path must include the Easysoft driver directories. Do this before you start your Oracle listener:

    The environment variable you use to set the library search path varies:

    Platform Environment variable
    AIX LIBPATH
    HP-UX SHLIB_PATH
    Linux. Solaris. Other System V based operating systems. LD_LIBRARY_PATH

    Set the appropriate variable for your platform in your Oracle user's .profile file. For example:

    LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/easysoft/lib:/usr/local/easysoft/unixODBC/lib
    export LD_LIBRARY_PATH

    Stop and start your Oracle listener before trying to connect again.

  2. initsid.ora not configured correctly.

    You have not configured the connection to unixODBC correctly in your initsid.ora file. For examples of how to configure your initsid.ora file, refer to these Easysoft tutorials:

    Note that although these tutorials were based around Easysoft ODBC drivers for SQL Server, the process is the same for all Easysoft ODBC drivers. If you need help configuring DGODBC or HSODBC with an Easysoft ODBC driver for a different database, contact the Easysoft support team (). We will then create a tutorial based around your set up.

  3. 64-bit version of the Easysoft ODBC driver installed when 32-bit ODBC driver is required or vice versa.

    You may have installed the wrong version of the Easysoft software. For example:

    • If you're using Oracle 10g, you need to use a 32-bit version of the Easysoft software. Oracle 10g, including the 64-bit edition, ships with a 32-bit HSODBC interface, and so you need a 32-bit Easysoft ODBC driver.
    • If you are using a 32-bit version of Oracle 11g, you must use a 32-bit Easysoft driver even if you are running the software on a 64-bit platform.

    If you're not sure whether to use a 32-bit or 64-bit Easysoft driver, contact the Easysoft support team (). Supply the team with this information:

    • Your Oracle version.
    • The contents of /usr/local/easysoft/product_install.info.

If, after following the guidance in this document, you still have issues or you would like to add to this document, send your comments to .

Notes

Further information