AIX 0509-150 Dependent module /opt/freeware/lib/libintl.a(libintl.so.8) could not be loaded.解决办法

AIX Toolbox: Dependent Module Errors for libintl.a(libintl.so.8)

Question & Answer

 

Question

Why do I get exec "dependent module" errors for libintl.a?

 

The following example is for cpio, however other executables may result in the same error)

 

exec(): 0509-036 Cannot load program /opt/freeware/bin/cpio because of the following errors:
        0509-150   Dependent module /opt/freeware/lib/libintl.a(libintl.so.8) could not be loaded.
        0509-152   Member libintl.so.8 is not found in archive

 

*** Note - if this error occurs for the "rpm" command, this document does not apply. 

In that case, it is recommended that you install/reinstall the latest rpm.rte 4.n 

  • https://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/INSTALLP/ppc/
# installp -qaXFY -d rpm.rte



 

Cause

This is due to conflicting libraries.

First we can examine the library listed in the error:

# ar -X32_64 -tv  /opt/freeware/lib/libintl.a | grep libintl
rwxr-xr-x   203/1     114582 Jan 04 14:38 2008 libintl.so.1
rwxr-xr-x   203/1     130986 Jan 04 14:40 2008 libintl.so.1

Now, let's examine the libintl.a from rpm.rte:

# ar -X32_64 -tv   /usr/opt/rpm/lib/libintl.a
rwxr-xr-x     0/0      86741 Jun 02 08:56 2016 libintl.so.8
rwxr-xr-x     0/0      94425 Jun 02 08:50 2016 libintl.so.8
rwxr-xr-x     0/0     114582 Apr 06 13:53 2017 libintl.so.1
rwxr-xr-x     0/0     130986 Apr 06 13:53 2017 libintl.so.1

Now we can determine what provided this problematic libintl.a:

# rpm -q --whatprovides  /opt/freeware/lib/libintl.a
gettext-0.19.8.1-1.ppc (current Toolbox version)
 

This occurs in a specific scenario where the gettext - 0.19.7-1 rpm was installed when rpm.rte 3.0.5 was installed.  Later, rpm.rte was updated to 4.13.0.n which provided a libintl.a with libintl.so.8.

The gettext-0.19.7-1 rpm had a post-uninstall script which backed up libintl.a (from rpm.rte 3.0.5 which only has libintl.so.1) and during gettext upgrade, (say to gettext 0.19.8.1-1 ), the post-uninstall script of gettext-0.19.7-1 ran at the end, reverting back to the saved libintl.a which creates this issue.

 

Answer

This issue was fixed in gettext 0.19.8.1-2 release where the backed-up libintl.a was removed, so it cannot replace the latest libintl.a file.

  • Download the latest gettext from the AIX Toolbox for Linux site

 

NOTE: Some non-Toolbox packages may install their own libintl.a, which can cause similar errors for AIX toolbox applications. Check to be sure that the version in /opt/freeware/lib is the one we install from AIX rpm.rte. 

 

If you are unable to download this package immediately, here is a temporary workaround:

# mv  /opt/freeware/lib/libintl.a  /opt/freeware/lib/libintl.a.gettext

# ln -sf  /usr/opt/rpm/lib/libintl.a  /opt/freeware/lib/libintl.a

Now test the executable

# rpm2cpio host-power-tools-4.3.2-aix-7.1-powerpc.rpm | /opt/freeware/bin/cpio -idmv

This runs without errors now

Now restore the gettext libintl.a until you can update gettext to 0.19.8.1-2 or greater

# unlink  /opt/freeware/lib/libintl.a
# mv  /opt/freeware/lib/libintl.a.gettext  /opt/freeware/lib/libintl.a

 

SUPPORT

A) For all questions or issues with Toolbox packages, the support is handled by the AIX Open Source Team in the forum:

https://www.ibm.com/developerworks/community/forums/html/forum?id=2eb0f36d-9534-471b-8b27-c21e6c5b9b2b

The AIX Open Source Team only provides support through the forum. They will answer what they reasonably can, but they don't own the packages or formally support them. For true expertise in usage of each package, users should consult the community for each respective package. If you have opened up a ticket with IBM Support to get Toolbox assistance, the ticket will be closed so you can work directly with the AIX Open Source Team in the forum.

** Cases opened to address Toolbox problems will be canceled and users will be referred to the Open Source Forum.

B) If there is a problem with installing rpm.rte, or the rpm executable, please open an AIX Case (See C Below) for assistance.

Examples of an rpm.rte issues supported through AIX Support:

- Errors updating or migrating the rpm.rte fileset
- Commands from the rpm.rte fileset will not run or coredump

Example of an rpm.rte rpm loading issue::

# rpm -qa
    exec(): 0509-036 Cannot load program /usr/opt/freeware/bin/rpm because of the following errors:
    0509-150 Dependent module libnss3.so could not be loaded.
    0509-022 Cannot load module libnss3.so.
    0509-026 System error: A file or directory in the path name does not exist.

 
This would be handled through an IBM AIX Support case, and the support team would help resolve the missing modules.

To learn what is provided and supported by the rpm.rte fileset:

#  lslpp -f rpm.rte

C) Opening an AIX Support Case

If additional assistance is required after completing all of the instructions provided in this document, please follow the step-by-step instructions below to contact IBM to open a case for software under warranty or with an active and valid support contract.  The technical support specialist assigned to your case will confirm that you have completed these steps.

1.  Document and/or take screen shots of all symptoms, errors, and/or messages that might have occurred. 

2.  Capture any logs or data relevant to the situation.

3.  Contact IBM to open a case:

   -For electronic support, please visit the IBM Support Community:
     https://www.ibm.com/mysupport
   -If you require telephone support, please visit the web page:
      https://www.ibm.com/planetwide/

4.  Provide a good description of your issue, and reference this Technote, and any issues you had with the instructions.

5.  Collect the system snap and upload all of the details and data for your case.

To collect a complete snap of your system information:

5.1) Remove previously gathered data

   # snap -r 

5.2) Copy related files from #1 and #2 to the snap data directory

   # mkdir -p /tmp/ibmsupt/testcase
   # cp  /tmp/ibmsupt/testcase

5.3) Run the snap command with one of the following options to collect all info.

   # snap -aZc (Omits system dump data)   

5.4) Rename the testcase to include your case number to ensure it is properly attached to your case

  # mv /tmp/ibmsupt/snap.pax.Z /tmp/ibmsupt/yourcase#[.optional_description].snap.pax.Z

5.5) Upload the file by one of the following options (a, b, or c)

     a) Attach to your case
     https://www.ibm.com/mysupport/s/my-cases

     b) Upload to the Enhanced Customer Data Repository(ECuRep) 
     https://www.secure.ecurep.ibm.com/app/upload_sf

     c) Upload to the Blue Diamond FTP server (Blue Diamond Customers Only)
     https://msciportal.im-ies.ibm.com

* Note: For information about blue diamond upload see:

     http://www.ibm.com/support/docview.wss?uid=nas8N1020947

Related Information

Resolving AIX Open Source Package and Application Issues

AIX Open Source Software Forum

IBM Support Community

Learn more about "Getting IBM Support" here

你可能感兴趣的:(AIX 0509-150 Dependent module /opt/freeware/lib/libintl.a(libintl.so.8) could not be loaded.解决办法)