AIX Open Source

AIX Open Source

Share your experiences and connect with fellow developers to discover how to build and manage open source software for the AIX operating system

 View Only
  • 1.  gettext-0.19.8.1-4.ppc LIBPATH problem

    Posted Mon December 02, 2019 07:46 AM

    Originally posted by: Edward Davignon


    Upgrading to gettext-0.19.8.1-4 breaks diffutils-3.6-1

    aix1$ LIBPATH= /opt/freeware/bin/sdiff --help
    Could not load program /opt/freeware/bin/sdiff:
    Could not load module /opt/freeware/lib/libintl.a(libintl.so.8).
            Dependent module /usr/lib/libiconv.a(libiconv.so.2) could not be loaded.
            Member libiconv.so.2 is not found in archive
    Could not load module sdiff_64.
            Dependent module /opt/freeware/lib/libintl.a(libintl.so.8) could not be loaded.
    aix1$ LIBPATH=/opt/freeware/lib /opt/freeware/bin/sdiff --version
    sdiff (GNU diffutils) 3.6
    Copyright (C) 2017 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    
    Written by Thomas Lord.
    aix1$ rpm -qf /usr/lib/libiconv.a /opt/freeware/lib/libiconv.a /opt/freeware/lib/libintl.a /opt/freeware/bin/sdiff
    file /usr/lib/libiconv.a is not owned by any package
    libiconv-1.14-2.ppc
    gettext-0.19.8.1-4.ppc
    diffutils-3.6-1.ppc
    aix1$ oslevel -s
    7200-03-03-1914
    aix1$
    
    aix2$ LIBPATH= /opt/freeware/bin/sdiff --version
    sdiff (GNU diffutils) 3.6
    Copyright (C) 2017 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    
    Written by Thomas Lord.
    aix2$ LIBPATH=/opt/freeware/lib /opt/freeware/bin/sdiff --version
    sdiff (GNU diffutils) 3.6
    Copyright (C) 2017 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    
    Written by Thomas Lord.
    aix2$
    aix2$ rpm -qf /usr/lib/libiconv.a /opt/freeware/lib/libiconv.a /opt/freeware/lib/libintl.a /opt/freeware/bin/sdiff
    file /usr/lib/libiconv.a is not owned by any package
    libiconv-1.14-2.ppc
    gettext-0.19.8.1-3.ppc
    diffutils-3.6-1.ppc
    aix2$ oslevel -s
    7200-03-03-1914
    aix2$
    


  • 2.  Re: gettext-0.19.8.1-4.ppc LIBPATH problem

    Posted Tue December 03, 2019 01:45 AM

    Originally posted by: AyappanP


    Gettext "0.19.8.1-4" is enabled with GNU libiconv support. It now links with /opt/freeware/lib/libiconv.a (libiconv.so.2).

    Some packages don't have proper LIBPATH set during compilation. Those packages search /usr/lib ( not in /opt/freeware/lib). 

    The new gettext exposed those packages. Coreutils, Texinfo/info, sed, zip and now diffutils are some of the packages. 

    We will fix diffutils and upload a new release soon.



  • 3.  Re: gettext-0.19.8.1-4.ppc LIBPATH problem

    Posted Tue December 03, 2019 09:36 AM

    Originally posted by: Edward Davignon


    Thanks for your reply.



  • 4.  Re: gettext-0.19.8.1-4.ppc LIBPATH problem

    Posted Tue January 14, 2020 08:45 PM

    Originally posted by: JUN4_Paul_Zimmermann


    Having the same issue regarding gnupg2 and logrotate from the IBM AIX toolbox.

    I have worked around the issue by doing the below. 

    With no real assistance from the IBM support case I raised.

    # mv /usr/lib/libiconv.a /usr/lib/libiconv.a.ORIG
    #
    # cp -p /opt/freeware/lib/libiconv.a /usr/lib/libiconv.a
     

     

     

     



  • 5.  Re: gettext-0.19.8.1-4.ppc LIBPATH problem

    Posted Wed January 15, 2020 03:37 AM

    Originally posted by: T.Rex


    On our machines, we have:

    # ar tv /usr/lib/libiconv.a
    rwxr-x---   300/300   234348 Mar  6 00:01 2019 shr4.o
    rwxr-x---   300/300   234598 Mar  6 00:01 2019 shr.o

    # ar -X64 tv /usr/lib/libiconv.a
    rwxr-x---   300/300   310264 Mar  6 00:01 2019 shr4_64.o

    # ar tv /opt/freeware/lib/libiconv.a
    rwxr-xr-x   204/1     1261013 Dec 11 12:56 2019 libiconv.so.2
    rwxr-x---     0/0     234348 Dec 11 14:55 2019 shr4.o
    rwxr-x---     0/0     234598 Dec 11 14:55 2019 shr.o

    # ar -X64 tv /opt/freeware/lib/libiconv.a
    rwxr-x---     0/0     310264 Dec 11 14:55 2019 shr4_64.o
    rwxr-xr-x   204/1     1305206 Dec 11 12:56 2019 libiconv.so.2

     

    So that, with LIBPATH starting with /opt/freeware, programs needing AIX libiconv stuff can find it inside the /opt/freeware/lib/libiconv.a archive.

     

    You could do the symmetric: add /opt/freeware libiconv.a stuff to /usr/lib/libiconv.a so that all programs will be happy.

    That means:

    # ar xv /opt/freeware/lib/libiconv.a
    x - libiconv.so.2
    x - shr4.o
    x - shr.o
     
    # ar -q /usr/lib/libiconv.a libiconv.so.2

     

    # ar -X64 xv /opt/freeware/lib/libiconv.a

    x - shr4_64.o
    x - libiconv.so.2

     

    # ar -X64 -q /usr/lib/libiconv.a libiconv.so.2

     

    In this order.