我有一个脚本(bash),它调用了6个工具,其中4个是32位编译的,2个是64位编译的。一个32位和一个64位是oracle依赖工具。由于Oracle依赖工具依赖于动态库(.so文件),我得到的错误为*。找不到其中一个工具(无论是32位还是64位,无论我在ORACLE_HOME中设置哪个,我猜)。 /> 任何人都可以提出建议,如何处理这种情况?
先谢谢
答案 0 :(得分:1)
在脚本中,在调用64位工具之前将LD_LIBRARY_PATH设置为64位* .so。
根据我的理解,如果LD_LIBRARY_PATH中存在32位和64位* .so,则可执行文件将采用正确的* .so,因为加载程序知道忽略错误体系结构的库。
有关详细信息,请参阅此How do shared libraries work in a mixed 64bit/32bit system?