0

通过 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)
4

1 回答 1

0

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

如果是这种情况,我认为您可能有两个选择。

  1. 将 libxerces 更新到预期的版本。

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

于 2012-01-31T20:50:44.127 回答