如何在UniObjects for Java子例程调用上指定LIBPATH?

时间:2012-01-20 17:38:34

标签: java xml rpc unidata uniobjects

我通过UOJ调用UniSubroutine时因LIBPATH设置而出现xml错误。

参考U2知识库文章SFMA-17048,我尝试使用SETENV Unibasic函数,但这无效。

我在aix 5.3上使用Unidata 7.2.5。

In USER-FORMS/_PACK.LIST.DOC2XML at line 1741 Can't load "/usr/udthome/bin/libxml.so": could not load module /usr/udthome/bin/libxml.so.
   Dependent module /usr/optio/eci77/bin/libxerces-c.a could not be loaded.
   The module has an invalid magic number.
   Could not load module /usr/udthome/bin/libxml.so.
   Dependent module /usr/udthome/bin/libxml.so could not be loaded.

更多信息。

bash-4.2$ ldd libxml.so
libxml.so needs:
Cannot find libxslt4c.a
         /usr/lib/libC.a(shr_64.o)
         /usr/lib/libC.a(ansi_64.o)
Cannot find libxerces-c.a
         /usr/lib/libc_r.a(shr_64.o)
         /usr/lib/libC.a(ansicore_64.o)
         /usr/lib/threads/libc.a(shr_64.o)
         /usr/lib/libC.a(shrcore_64.o)
         /usr/lib/libC.a(shr3_64.o)
         /usr/lib/libC.a(shr2_64.o)
         /unix
         /usr/lib/libcrypt.a(shr_64.o)

1 个答案:

答案 0 :(得分:0)

这听起来像libxerces-c.a不是libxml.so所期望的版本。

如果是这种情况,我想你可能有2个选择。

  1. 将libxerces更新为预期版本。

  2. 在另一个位置安装正确版本的libxerces。设置LIBPATH环境变量时,请确保首先是预期版本的路径,以便加载该版本而不是旧版本。