Linux执行可执行程序,出现如下出错信息:
./Test.out: error while loading shared libraries: liboscarodbc.so: cannot open shared object file: No such file or directory
解决方法如下:
1)执行命令:ldd+可执行程序名称,查看其依赖的动态库路径
例如执行: ldd Test.out
输出如下:
linux-vdso.so.1 (0x00007fffff950000)
liboscarodbc.so => not found
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007ffff593c000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007ffff58dc000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ffff58a8000)
libc.so.6 => /lib64/libc.so.6 (0x00007ffff56e4000)
/lib64/ld.so.1 (0x00007ffff5b10000)
libm.so.6 => /lib64/libm.so.6 (0x00007ffff5600000)
根据如上输出,我们知道是liboscarodbc.so这个库找不到。
2)将liboscarodbc.so拷贝到我们实际情况所需的路径,例如:/usr/lib
3)执行命令:vim /etc/