unixodbc driver manager cannot open specified library on install

那年仲夏 提交于 2019-12-03 13:00:39

Check unixODBC and your driver are the same architecture i.e., run:

which isql
file xxx (whatever came back from above)
file /usr/dlc/odbc/lib/pgoe1023.so

They should both be 32 bit or 64 bit. A 64 bit unixODBC cannot use 32 bit drivers and vice versa.

You should not need that symlink.

Run ldd on /usr/dlc/odbc/lib/pgoe1023.so to ensure all dependencies are found.

Check /usr/dlc/odbc/lib/pgoe1023.so is executable.

BTW, I presume you got your labels the wrong way around as your odbc.ini file contents should be the odbcinst.ini and vice versa.

One thing to check is the minor version numbers of the unixODBC libs that the driver is linked against. Since unixODBC 2.3.1 I changed the minor lib number to 2 to reflect the change in the SQLLEN size on 64 bit platforms. However if the driver lib was linked against a earlier version it will be looking for a libodbc.so.1, and current sources provide libodbc.so.2. Simple solution is to provide a sym link from the *.so.1 to the *.so.2. The same is also true of libodbcinst.so, so check that as well.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!