Skip to content

Sciunit doesn't work when the reproducer has a much older versions of glibc #37

@charmoniumQ

Description

@charmoniumQ

I tried creating two podman containers with podman run -it --rm ubuntu:23.04 and another with ubuntu:20.04.

Then I ran the following:

apt update
apt install -y python3 python3-pip python3-venv cmake git
python3 -m venv venv
source venv/bin/activate
pip3 install git+https://github.com/depaul-dice/sciunit

In the 23.04 container, I ran:

sciunit create test
sciunit exec pwd
sciunit copy

So far, so good. In the 20.04 container, I ran:

sciunit open $key_from_previous_container
sciunit repeat e1

The last command fails with, outputing only:

../cde-exec: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by ../cde-exec)
../cde-exec: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by ../cde-exec)
b''

This works fine if the containers have the same Ubuntu versions, but fails when their glibc is different (as far as I can tell) ldd --version | head --lines=1.

I think this is because cde-exec depends on glibc, the compiled version of cde-exec (compiled for a specific glibc) makes its way into the sciunit package, but glibc does not, so when another client tries to run the sciunit package, their invocation of cde-exec can't find the right version of glibc.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions