IBM Support

IT12164: User program cannot find libimqb23gl_r.so and libimqs23gl_r.so when MQ V8.0.0.3 is the primary installation

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When IBM MQ 8.0 is set as the primary Installation, the runtime
    linker/loader for a 32bit program cannot find libimqb23gl_r.so
    and libimqs23gl_r.so.
    
    Example error output:
      ./mypgm: error while loading shared libraries:
      libimqb23gl_r.so: cannot open shared object file:
      No such file or directory
    
    When trying to debug this using "ldd":
      $ldd ./mypgm
      libimqb23gl_r.so => not found
      libimqs23gl_r.so => not found
    
    This worked in WebSphere MQ 7.5.
    
    MQ 7.5 install had the following symlinks:
      /usr/lib/libimqb23gl.so -> /opt/mqm/lib/4.1/libimqb23gl.so
      /usr/lib/libimqs23gl.so -> /opt/mqm/lib/4.1/libimqs23gl.so
    
    In MQ 8.0, the 4.1 directory no longer exists. It was replaced
    with a 4.1 suffix at the end of the filename:
      /usr/lib/libimqb23gl.so.4.1 -> /opt/mqm/lib/libimqb23gl.so.4.1
      /usr/lib/libimqs23gl.so.4.1 -> /opt/mqm/lib/libimqs23gl.so.4.1
    
    Symlinks for the simple .so filenames are not present, but these
    are needed by apps that for some reason must obtain their libs
    this way.
    

Local fix

  • The first workaround is to use LD_LIBRARY_PATH (maybe via use of
    setmqenv) to ensure runtime libs are obtained direct from the MQ
    installation lib and lib64 directories.
    
    If for some reason you must obtain the MQ C++ libs from the
    default MQ installation on the system, via symlinks in /usr/lib
    and /usr/lib64, then the following workaround should also work:
    
    1. Stop all MQ activity in the installation, including ending
    all queue managers and MQ applications.
    2. Unset the MQ installation as primary.  This will remove all
    MQ symbolic links from /usr/lib.
    3. Keep a backup of the current instinfo.tsk.
    4. Alter instinfo.tsk to change the "Name" field for all
    libraries ending in ".so.4.1" to end with just ".so", e. g.:
    
         FROM:  Name=/usr/lib/libimqb23gl_r.so.4.1
         TO:    Name=/usr/lib/libimqb23gl_r.so
    
       The instinfo.tsk file can be found in the root installation
    directory of the MQ installation. For example, /opt/mqm is the
    default MQ root installation directory on Linux.
    
    5. Set the installation as primary to create the right links.
    6. Start your queue managers and applications.  MQ C++ programs
    should now run normally.
    7. Before installing your next fix pack, unset the installation
    as primary, then restore the original instinfo.tsk ensuring the
    ownership+permissions are unchanged from the original.  If the
    fix pack contains a fix for this APAR then it will overwrite the
    instinfo.tsk with a fixed version.
    

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    Users with applications that use MQ C++ API libraries from
    /usr/lib or /usr/lib64 on Linux, who are upgrading to MQ 8.0
    from earlier releases.
    
    Note that in most cases a reasonable workaround is to use
    LD_LIBRARY_PATH (maybe via use of setmqenv) to ensure runtime
    libs are obtained direct from the MQ installation lib and lib64
    directories.
    
    
    Platforms affected:
    Linux on Power, Linux on x86, Linux on x86-64, Linux on zSeries
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    The symlinks needed in /usr/lib and /usr/lib64 were not being
    created by MQ when the setmqinst program ran.  This is because
    the entries needed in instinfo.tsk were not present.
    
    The "instinfo.tsk" file (located in the top-level MQ
    installation directory, e.g. /opt/mqm) tells MQ's setmqinst
    program what it must do to make or unmake a primary
    installation).
    
    On a 7.5 system it shows:
      SymLink:
        Name=/usr/lib/libimqb23gl_r.so
        Target=+MQ_INSTALLATION_PATH+/lib/4.1/libimqb23gl_r.so
        Activity=PRIMARY
    
    On an 8.0 system it shows:
      SymLink:
        Name=/usr/lib/libimqb23gl_r.so.4.1
        Target=+MQ_INSTALLATION_PATH+/lib/libimqb23gl_r.so.4.1
        Activity=PRIMARY
    

Problem conclusion

  • The needed entries in instinfo.tsk have been added.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v8.0       8.0.0.6
    
    The latest available maintenance can be obtained from
    'WebSphere MQ Recommended Fixes'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037
    
    If the maintenance level is not yet available information on
    its planned availability can be found in 'WebSphere MQ
    Planned Maintenance Release Dates'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309
    ---------------------------------------------------------------
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT12164

  • Reported component name

    WMQ BASE MULTIP

  • Reported component ID

    5724H7251

  • Reported release

    800

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2015-11-07

  • Closed date

    2016-03-22

  • Last modified date

    2016-04-13

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    WMQ BASE MULTIP

  • Fixed component ID

    5724H7251

Applicable component levels

  • R800 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.0.0.0","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
13 April 2016