Open Source Development

Power Open Source Development

Explore the open source tools and capabilities for building and deploying modern applications on IBM Power platforms including AIX, IBM i, and Linux.


#Power


#Power

 View Only
  • 1.  libxml2 dependency problem with libiconv

    Posted Mon September 21, 2020 05:58 AM
    Hello,

    I removed all rpm on this server and I'm going to install yum. After a rpm --nodeps -Uvh *.rpm I get the following dependency problem with a yum update:
    root:/home/root# yum check-update
    There was a problem importing one of the Python modules
    required to run yum. The error leading to this problem was:

    0509-022 Cannot load module /opt/freeware/lib/libxml2.a(libxml2.so.2).
    0509-150 Dependent module /usr/lib/libiconv.a(libiconv.so.2) could not be loaded.
    0509-152 Member libiconv.so.2 is not found in archive
    0509-022 Cannot load module /opt/freeware/lib/python2.7/site-packages/_sqlitecache.so.
    0509-150 Dependent module /opt/freeware/lib/libxml2.a(libxml2.so.2) could not be loaded.

    Please install a package which provides this module, or
    verify that the module is installed correctly.

    It's possible that the above module doesn't match the
    current version of Python, which is:
    2.7.10 (default, Jun 22 2016, 05:57:59) [C]

    If you cannot solve this problem yourself, please go to
    the yum faq at:
    http://yum.baseurl.org/wiki/Faq


    root:/home/root# rpm -q libxml2
    libxml2-2.9.9-1.ppc
    root:/home/root# rpm -q libiconv
    libiconv-1.16-1.ppc
    root:/home/root# ar -X64 -t /opt/freeware/lib/libiconv.a
    libiconv.so.2
    shr4_64.o
    root:/home/root# ar -t /opt/freeware/lib/libiconv.a
    libiconv.so.2
    shr4.o
    shr.o
    root:/home/root# ar -X64 -t /usr/lib/libiconv.a
    shr4_64.o
    root:/home/root# ar -t /usr/lib/libiconv.a
    shr4.o
    shr.o

    root:/home/root# oslevel -s
    7100-05-01-1731

    I think libxml2 has to link libiconv from /opt/freeware and assume this problem is caused by Removal of symlink/files from /usr for AIX Toolbox packages because not all packages take care of the symlink/files removal from /usr at the moment.

    When I create a symlink from /usr/lib/libiconv.a to /opt/freeware the update will work but subsequently I get troubles with gettext and glib2 with libiconv.

    root:/opt/freeware/lib#  yum check
    gettext-0.19.8.1-5.ppc has missing requires of libiconv.a(shr4.o)
    gettext-0.19.8.1-5.ppc has missing requires of libiconv.a(shr4_64.o)
    glib2-2.56.1-2.ppc has missing requires of libiconv.a(shr4.o)
    Error: check all
    I'm afraid that the AIX toolbox packages are not in a clean state at the moment. I hope I'm wrong.

    ------------------------------
    Emanuel Reisinger
    ------------------------------

    #AIXOpenSource


  • 2.  RE: libxml2 dependency problem with libiconv

    Posted Mon September 21, 2020 06:57 AM
    Your python is at 2.7.10 version and the libxml2 package is at 2.9.9 level. If you are using the yum bundle, then all the rpms are at the lower level . One can install the yum and yum update brings you at the latest and clean state. 
    But in your case , it's mix up and the error is nothing but a consequence of the dangerous "--nodeps" option.
    This has nothing to do with the removal /usr symbolic links from the recent rpms. "/usr/lib/libiconv.a" comes from AIX base fileset and "/opt/freeware/lib/libiconv.a" comes from libiconv rpm. Creating a symbolic link between these two doesn't make any sense.

    ------------------------------
    Ayappan P
    ------------------------------



  • 3.  RE: libxml2 dependency problem with libiconv

    Posted Mon September 21, 2020 08:37 AM

    You are right!

    I'm using the latest yum bundle with some latest additional requried rpms. As you say, mixing older and newer rpms does not work.

    yum needs tcl/tk as dependency.
    The required libintl.so.1 is not included in the gettext version (0.19.7-1) of the latest yum bundle. Therefore gettext has to be downgraded to version 0.10.40-8.

    These are the additional required rpms for the latest yum bundle (v5 of 13-Mar-2019) to install yum on AIX 7.1:
    gettext-0.10.40-8.aix5.2.ppc.rpm
    libxml2-2.6.21-4.aix5.2.ppc.rpm
    tcl-8.4.7-4.aix5.2.ppc.rpm
    tk-8.4.7-4.aix5.2.ppc.rpm
    zlib-1.2.11-1.aix6.1.ppc.rpm

    After installing the yum bundle with the additional required rpms, a yum update works like a charm.

    As Nigel Griffiths says on the IBM support page AIX and yum - Get those Open Source apps on AIX the easy way:

    I am assuming the latest AIX release AIX 7.2 TL2 sp2
    If you are installing on older AIX versions then you may have a harder time.


    Thanks for the illuminiation.



    ------------------------------
    Emanuel Reisinger
    ------------------------------