'PHP Warning: odbc_connect(): SQL error: [unixODBC][Driver Manager]Can't open lib 'ivoa27.so' [Netsuite]
I am trying to connect netsuite ODBC driver with php on Linux. It works fine on Linux but with nginx, the php connection fails.
I seems to have a problem of dependencies that I can't figure out.
ldd ivoa.so.27 works perfectly on the server linux but ldd ivoa.so.27 when using the user www-data can't find two files.
See below.
ldd /opt/calnexsol/engagement_form/odbc_driver/lib64/ivoa27.so
linux-vdso.so.1 => (0x00007ffc72b54000)
librt.so.1 => /lib64/librt.so.1 (0x00007ff74b42b000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007ff74b227000)
libicuuc.so.42 => /opt/calnexsol/engagement_form/odbc_driver/lib64/libicuuc.so.42 (0x00007ff74afcd000)
libicudata.so.42 => /opt/calnexsol/engagement_form/odbc_driver/lib64/libicudata.so.42 (0x00007ff749f88000)
libpam.so.0 => /lib64/libpam.so.0 (0x00007ff749d79000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ff749b5d000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007ff749855000)
libm.so.6 => /lib64/libm.so.6 (0x00007ff749553000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007ff74933d000)
libc.so.6 => /lib64/libc.so.6 (0x00007ff748f6f000)
/lib64/ld-linux-x86-64.so.2 (0x00007ff74b9de000)
libaudit.so.1 => /lib64/libaudit.so.1 (0x00007ff748d46000)
libcap-ng.so.0 => /lib64/libcap-ng.so.0 (0x00007ff748b40000)
sudo runuser -u www-data -- ldd /opt/calnexsol/engagement_form/odbc_driver/lib64/ivoa27.so
linux-vdso.so.1 => (0x00007fffc093c000)
librt.so.1 => /lib64/librt.so.1 (0x00007fb274424000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fb274220000)
libicuuc.so.42 => not found
libicudata.so.42 => not found
libpam.so.0 => /lib64/libpam.so.0 (0x00007fb274011000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fb273df5000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fb273aed000)
libm.so.6 => /lib64/libm.so.6 (0x00007fb2737eb000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fb2735d5000)
libc.so.6 => /lib64/libc.so.6 (0x00007fb273207000)
/lib64/ld-linux-x86-64.so.2 (0x00007fb2749d7000)
libaudit.so.1 => /lib64/libaudit.so.1 (0x00007fb272fde000)
libcap-ng.so.0 => /lib64/libcap-ng.so.0 (0x00007fb272dd8000)
Please advise. If anyone have a solution.
Solution 1:[1]
Assuming you have set OASDK_ODBC_HOME, you can add /opt/calnexsol/engagement_form/odbc_driver/lib64 to LD_LIBRARY_PATH. e.g.,
export LD_LIBRARY_PATH=/opt/calnexsol/engagement_form/odbc_driver/lib64
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | 2ps |
