Power Global

 View Only
Expand all | Collapse all

Symbol _GLOBAL__AIXI_libsqlite3_so (number 334) is not exported from dependent

  • 1.  Symbol _GLOBAL__AIXI_libsqlite3_so (number 334) is not exported from dependent

    Posted Mon August 19, 2024 05:50 AM

    post updating rpm package from 4.15.1.1011 to 4.15.1.1013 we are getting issues running gpg commands in app user whereas it is working fine as root.

    gpg --list-keys

    //.gnupg/pubring.gpg
    -------------------

    error while running same command from App user ID:

    gpg --list-keys

    Could not load program gpg_64:
    Symbol resolution failed for gpg_64 because:
            Symbol _GLOBAL__AIXI_libsqlite3_so (number 334) is not exported from dependent
              module /usr/lib/libsqlite3.a[libsqlite3.so.0].
            Symbol _GLOBAL__AIXD_libsqlite3_so (number 335) is not exported from dependent
              module /usr/lib/libsqlite3.a[libsqlite3.so.0].
    Examine .loader section symbols with the 'dump -Tv' command.



    ------------------------------
    Unix Team
    ------------------------------


  • 2.  RE: Symbol _GLOBAL__AIXI_libsqlite3_so (number 334) is not exported from dependent

    Posted Thu September 12, 2024 12:56 PM
    Edited by Abraham Alvarez Thu September 12, 2024 01:00 PM

    If root works and a regular user does not, it might be due to environment variables.

    Please note that there might be multiple libsqlite3.a files installed in under AIX.

    (0) root @ hostname : /
    # ls -l /opt/freeware/lib/libsqlite* /usr/lib/libsql*
    -rwxr-xr-x    1 root     system     13921375 Mar 31 2023  /opt/freeware/lib/libsqlite3.a
    -rwxr-xr-x    1 root     system      6506788 Mar 31 2023  /opt/freeware/lib/libsqlite3.so
    lrwxrwxrwx    1 root     system           29 Jun 28 00:40 /usr/lib/libsqlite3.a -> /usr/opt/rpm/lib/libsqlite3.a
    lrwxrwxrwx    1 root     system           30 Nov 21 2023  /usr/lib/libsqlite3.so -> /usr/opt/rpm/lib/libsqlite3.so
    
    (0) root @ hostname : /
    # ls -Ll /opt/freeware/lib/libsqlite* /usr/lib/libsql*
    /usr/opt/rpm/lib/libsqlite3.so: A file or directory in the path name does not exist.
    -rwxr-xr-x    1 root     system     13921375 Mar 31 2023  /opt/freeware/lib/libsqlite3.a
    -rwxr-xr-x    1 root     system      6506788 Mar 31 2023  /opt/freeware/lib/libsqlite3.so
    -r-xr-xr-x    1 root     system      3337766 Apr 04 09:55 /usr/lib/libsqlite3.a
    

    The one under /usr/lib is part of the rpm.rte fileset (part of AIX)

    The one under /opt/freeware/lib is likely part of the RPM sqlite-3.41.2-1.ppc (version might differ in your system).

    If the GPG tool is expected to use the RPM version, you might need to add the path '/opt/freeware/lib' to either the LIBPATH or LD_LIBRARY_PATH environment variables.

    To confirm the existence of the object:

    # nm /opt/freeware/lib/libsqlite3.a | grep GLOBAL__AIXI_libsql
    ._GLOBAL__AIXI_libsqlite3_so T   268436280
    _GLOBAL__AIXI_libsqlite3_so D   536972196
    _GLOBAL__AIXI_libsqlite3_so d   536972196          12
    
    # nm /usr/lib/libsqlite3.a | grep GLOBAL__AIXI_libsql         
    
    # 

    The library from the rpm.rte fileset does not seem to have the object that you are showing in your error message, while the one from the RPM does have those objects.

    ------------------------------
    Abraham Alvarez
    ------------------------------