Skip to content

AIX playbooks failing in baselayout role due to libunwind.a dependency on OSUOSL systems #4326

Open

Description

@sxa

When attempting to deploy the playbooks on the AIX 7.2 machines at OSUOSL there is a dependency problem showing up. This did not affect the IBM machines (which already had rust installed):

TASK [baselayout : install packages] *******************************************
task path: /home/sxa/git/nodebuild/ansible/roles/baselayout/tasks/main.yml:60
ok: [test-osuosl-aix72-ppc64_be-4] => (item=gcc8-c++,gcc12-c++) => {"ansible_loop_var": "package", "changed": false, "msg": "Nothing to do", "package": "gcc8-c++,gcc12-c++", "rc": 0, "results": []}
Depsolve Error occurred: 
 Problem 1: cannot install the best candidate for the job
  - nothing provides libunwind.a(libunwind.so.1) needed by rust1.88-1.88.0-1.ppc from AIX_Toolbox_72
  - nothing provides libc++.a(libc++.so.1) needed by rust1.88-1.88.0-1.ppc from AIX_Toolbox_72
  - nothing provides libc++abi.a(libc++abi.so.1) needed by rust1.88-1.88.0-1.ppc from AIX_Toolbox_72
 Problem 2: package rustfmt1.88-1.88.0-1.ppc from AIX_Toolbox_72 requires rust1.88 >= 1.88.0, but none of the providers can be installed
  - cannot install the best candidate for the job
  - nothing provides libunwind.a(libunwind.so.1) needed by rust1.88-1.88.0-0.ppc from AIX_Toolbox_72
  - nothing provides libc++.a(libc++.so.1) needed by rust1.88-1.88.0-0.ppc from AIX_Toolbox_72
  - nothing provides libc++abi.a(libc++abi.so.1) needed by rust1.88-1.88.0-0.ppc from AIX_Toolbox_72
  - nothing provides libunwind.a(libunwind.so.1) needed by rust1.88-1.88.0-1.ppc from AIX_Toolbox_72
  - nothing provides libc++.a(libc++.so.1) needed by rust1.88-1.88.0-1.ppc from AIX_Toolbox_72
  - nothing provides libc++abi.a(libc++abi.so.1) needed by rust1.88-1.88.0-1.ppc from AIX_Toolbox_72
 Problem 3: package cargo1.88-1.88.0-1.ppc from AIX_Toolbox_72 requires rust1.88 >= 1.88.0, but none of the providers can be installed
  - cannot install the best candidate for the job
  - nothing provides libunwind.a(libunwind.so.1) needed by rust1.88-1.88.0-0.ppc from AIX_Toolbox_72
  - nothing provides libc++.a(libc++.so.1) needed by rust1.88-1.88.0-0.ppc from AIX_Toolbox_72
  - nothing provides libc++abi.a(libc++abi.so.1) needed by rust1.88-1.88.0-0.ppc from AIX_Toolbox_72
  - nothing provides libunwind.a(libunwind.so.1) needed by rust1.88-1.88.0-1.ppc from AIX_Toolbox_72
  - nothing provides libc++.a(libc++.so.1) needed by rust1.88-1.88.0-1.ppc from AIX_Toolbox_72
  - nothing provides libc++abi.a(libc++abi.so.1) needed by rust1.88-1.88.0-1.ppc from AIX_Toolbox_72", "package": "bash,cmake,coreutils,curl,gcc-c++,tar,unzip,git,make,sudo,python3-setuptools,python3,xz,rust1.88,cargo1.88,rustfmt1.88

This is from the AIX system package libunwind.rte which is part of the IBM_OPEN_XL_CPP_RUNTIME_17.1.4.1_AIX.tar.Z package archive from IBM so that will need to be installed in order to resolve this. Ref: https://github.com/nodejs/build/blob/main/ansible/MANUAL_STEPS.md#install-clang-backend

Activity

  1. richardlau commented on May 7, 2026

    @richardlau
    Member

    @sxa I don't think we currently distinguish in Ansible between the Power 8 and Power 9 machines, but we only need rust for Node.js > 26 and only run builds for those on the Power 9 machines (i.e. we do not need rust on the Power 8 machines, although no harm if it does get installed onto them).

  2. sxa commented on May 7, 2026

    @sxa
    MemberAuthor

    Yeah another option is, of course, to just skip it on the earlier systems, although I feel it's less complexity to just have them all be equivalent.
    I wouldn't object to either solution though, but it does need a fix one way or the other.

  3. sxa commented on Jun 15, 2026

    @sxa
    MemberAuthor

    The unwind depedency requires bos.rte.libc 7.2.5.100 which is not on those machines. (Memo to self ref discussion on private slack on 7th May)
    At the moment the following two machines have a version of java which is not compatible with the next LTS version of jenkins and the playbook execution prevents this from completing:

    I'm going to manually put a later version of java on those machines (21 as 25 has depedency issues at runtime too) to unblock the jenkins server upgrades after which we can sort this out one way or another (EDIT: Done)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions