Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Install libstdc++6:amd64 in the container #5

Merged
merged 3 commits into from
Nov 14, 2024

Conversation

EliahKagan
Copy link
Owner

This is a fork-internal PR to update a feature branch with a squash, so the original history can be indefinitely preserved by reference to this PR. See 54c3f79 for context.

Installing nodejs:amd64 in a 32-bit container to work around actions/checkout#334 works by causing 64-bit libraries the external mapped node20 needs (even though nodejs:amd64 in Debian is Node 18), as described in actions/checkout#334 (comment). But this installed more packages than are needed.

It turns out that, at least with this image, the only libraries the container is missing are the 32-bit libstdc++ and its dependencies. It is therefore sufficient to install the libstdc++6:amd64 package. This makes that change, squashing a few investigatory steps that led to it.

With only `libssl3:amd64` and its dependencies, `actions/checkout`
did fail, but with a different error than before, showing a clear
error about a missing library, `libstdc++`.

    /usr/bin/docker exec  c1e55a75713e2c4fd08241fae9f4fecbe3cbb179be45174b3138390a1238090e sh -c "cat /etc/*release | grep ^ID"
    /__e/node20/bin/node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

Before trying adding that, I want to check that enabling `amd64` in
`dpkg` has the expected *no effect* on the error messages, compared
to not enabling it.
This does not add back libssl3:amd64 yet, in case it is not needed,
though I expect that it will be needed.
@EliahKagan EliahKagan merged commit e1fe1cb into run-ci/32bit Nov 14, 2024
16 of 18 checks passed
@EliahKagan EliahKagan deleted the run-ci/32bit-next branch November 14, 2024 01:28
EliahKagan added a commit that referenced this pull request Nov 14, 2024
Installing `nodejs:amd64` in a 32-bit container to work around
actions/checkout#334 works by causing
64-bit libraries the external mapped `node20` needs (even though
`nodejs:amd64` in Debian is Node 18), as described in
actions/checkout#334 (comment).
But this installed more packages than are needed.

It turns out that, at least with this image, the only libraries the
container is missing are the 32-bit libstdc++ and its dependencies.
It is therefore sufficient to install the `libstdc++6:amd64`
package. This commit makes that change, squashing a few
investigatory steps that led to it (#5).

* See if libssl3:amd64 is all we need

* Temporarily omit even libssl3:amd64

With only `libssl3:amd64` and its dependencies, `actions/checkout`
did fail, but with a different error than before, showing a clear
error about a missing library, `libstdc++`.

    /usr/bin/docker exec  c1e55a75713e2c4fd08241fae9f4fecbe3cbb179be45174b3138390a1238090e sh -c "cat /etc/*release | grep ^ID"
    /__e/node20/bin/node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

Before trying adding that, I want to check that enabling `amd64` in
`dpkg` has the expected *no effect* on the error messages, compared
to not enabling it.

* Install libstdc++6:amd64 in the container

This does not add back libssl3:amd64 yet, in case it is not needed,
though I expect that it will be needed.
EliahKagan added a commit that referenced this pull request Nov 14, 2024
Installing `nodejs:amd64` in a 32-bit container to work around
actions/checkout#334 works by causing
64-bit libraries the external mapped `node20` needs (even though
`nodejs:amd64` in Debian is Node 18), as described in
actions/checkout#334 (comment).
But this installed more packages than are needed.

It turns out that, at least with this image, the only libraries the
container is missing are the 32-bit libstdc++ and its dependencies.
It is therefore sufficient to install the `libstdc++6:amd64`
package. This commit makes that change, squashing a few
investigatory steps that led to it (#5).

* See if libssl3:amd64 is all we need

* Temporarily omit even libssl3:amd64

With only `libssl3:amd64` and its dependencies, `actions/checkout`
did fail, but with a different error than before, showing a clear
error about a missing library, `libstdc++`.

    /usr/bin/docker exec  c1e55a75713e2c4fd08241fae9f4fecbe3cbb179be45174b3138390a1238090e sh -c "cat /etc/*release | grep ^ID"
    /__e/node20/bin/node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

Before trying adding that, I want to check that enabling `amd64` in
`dpkg` has the expected *no effect* on the error messages, compared
to not enabling it.

* Install libstdc++6:amd64 in the container

This does not add back libssl3:amd64 yet, in case it is not needed,
though I expect that it will be needed.
EliahKagan added a commit that referenced this pull request Nov 14, 2024
Installing `nodejs:amd64` in a 32-bit container to work around
actions/checkout#334 works by causing
64-bit libraries the external mapped `node20` needs (even though
`nodejs:amd64` in Debian is Node 18), as described in
actions/checkout#334 (comment).
But this installed more packages than are needed.

It turns out that, at least with this image, the only libraries the
container is missing are the 32-bit libstdc++ and its dependencies.
It is therefore sufficient to install the `libstdc++6:amd64`
package. This commit makes that change, squashing a few
investigatory steps that led to it (#5).

* See if libssl3:amd64 is all we need

* Temporarily omit even libssl3:amd64

With only `libssl3:amd64` and its dependencies, `actions/checkout`
did fail, but with a different error than before, showing a clear
error about a missing library, `libstdc++`.

    /usr/bin/docker exec  c1e55a75713e2c4fd08241fae9f4fecbe3cbb179be45174b3138390a1238090e sh -c "cat /etc/*release | grep ^ID"
    /__e/node20/bin/node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

Before trying adding that, I want to check that enabling `amd64` in
`dpkg` has the expected *no effect* on the error messages, compared
to not enabling it.

* Install libstdc++6:amd64 in the container

This does not add back libssl3:amd64 yet, in case it is not needed,
though I expect that it will be needed.
EliahKagan added a commit that referenced this pull request Nov 15, 2024
Installing `nodejs:amd64` in a 32-bit container to work around
actions/checkout#334 works by causing
64-bit libraries the external mapped `node20` needs (even though
`nodejs:amd64` in Debian is Node 18), as described in
actions/checkout#334 (comment).
But this installed more packages than are needed.

It turns out that, at least with this image, the only libraries the
container is missing are the 32-bit libstdc++ and its dependencies.
It is therefore sufficient to install the `libstdc++6:amd64`
package. This commit makes that change, squashing a few
investigatory steps that led to it (#5).

* See if libssl3:amd64 is all we need

* Temporarily omit even libssl3:amd64

With only `libssl3:amd64` and its dependencies, `actions/checkout`
did fail, but with a different error than before, showing a clear
error about a missing library, `libstdc++`.

    /usr/bin/docker exec  c1e55a75713e2c4fd08241fae9f4fecbe3cbb179be45174b3138390a1238090e sh -c "cat /etc/*release | grep ^ID"
    /__e/node20/bin/node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

Before trying adding that, I want to check that enabling `amd64` in
`dpkg` has the expected *no effect* on the error messages, compared
to not enabling it.

* Install libstdc++6:amd64 in the container

This does not add back libssl3:amd64 yet, in case it is not needed,
though I expect that it will be needed.
EliahKagan added a commit that referenced this pull request Nov 15, 2024
Installing `nodejs:amd64` in a 32-bit container to work around
actions/checkout#334 works by causing
64-bit libraries the external mapped `node20` needs (even though
`nodejs:amd64` in Debian is Node 18), as described in
actions/checkout#334 (comment).
But this installed more packages than are needed.

It turns out that, at least with this image, the only libraries the
container is missing are the 32-bit libstdc++ and its dependencies.
It is therefore sufficient to install the `libstdc++6:amd64`
package. This commit makes that change, squashing a few
investigatory steps that led to it (#5).

* See if libssl3:amd64 is all we need

* Temporarily omit even libssl3:amd64

With only `libssl3:amd64` and its dependencies, `actions/checkout`
did fail, but with a different error than before, showing a clear
error about a missing library, `libstdc++`.

    /usr/bin/docker exec  c1e55a75713e2c4fd08241fae9f4fecbe3cbb179be45174b3138390a1238090e sh -c "cat /etc/*release | grep ^ID"
    /__e/node20/bin/node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

Before trying adding that, I want to check that enabling `amd64` in
`dpkg` has the expected *no effect* on the error messages, compared
to not enabling it.

* Install libstdc++6:amd64 in the container

This does not add back libssl3:amd64 yet, in case it is not needed,
though I expect that it will be needed.
EliahKagan added a commit that referenced this pull request Nov 17, 2024
Installing `nodejs:amd64` in a 32-bit container to work around
actions/checkout#334 works by causing
64-bit libraries the external mapped `node20` needs (even though
`nodejs:amd64` in Debian is Node 18), as described in
actions/checkout#334 (comment).
But this installed more packages than are needed.

It turns out that, at least with this image, the only libraries the
container is missing are the 32-bit libstdc++ and its dependencies.
It is therefore sufficient to install the `libstdc++6:amd64`
package. This commit makes that change, squashing a few
investigatory steps that led to it (#5).

* See if libssl3:amd64 is all we need

* Temporarily omit even libssl3:amd64

With only `libssl3:amd64` and its dependencies, `actions/checkout`
did fail, but with a different error than before, showing a clear
error about a missing library, `libstdc++`.

    /usr/bin/docker exec  c1e55a75713e2c4fd08241fae9f4fecbe3cbb179be45174b3138390a1238090e sh -c "cat /etc/*release | grep ^ID"
    /__e/node20/bin/node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

Before trying adding that, I want to check that enabling `amd64` in
`dpkg` has the expected *no effect* on the error messages, compared
to not enabling it.

* Install libstdc++6:amd64 in the container

This does not add back libssl3:amd64 yet, in case it is not needed,
though I expect that it will be needed.
EliahKagan added a commit that referenced this pull request Nov 17, 2024
Installing `nodejs:amd64` in a 32-bit container to work around
actions/checkout#334 works by causing
64-bit libraries the external mapped `node20` needs (even though
`nodejs:amd64` in Debian is Node 18), as described in
actions/checkout#334 (comment).
But this installed more packages than are needed.

It turns out that, at least with this image, the only libraries the
container is missing are the 32-bit libstdc++ and its dependencies.
It is therefore sufficient to install the `libstdc++6:amd64`
package. This commit makes that change, squashing a few
investigatory steps that led to it (#5).

* See if libssl3:amd64 is all we need

* Temporarily omit even libssl3:amd64

With only `libssl3:amd64` and its dependencies, `actions/checkout`
did fail, but with a different error than before, showing a clear
error about a missing library, `libstdc++`.

    /usr/bin/docker exec  c1e55a75713e2c4fd08241fae9f4fecbe3cbb179be45174b3138390a1238090e sh -c "cat /etc/*release | grep ^ID"
    /__e/node20/bin/node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

Before trying adding that, I want to check that enabling `amd64` in
`dpkg` has the expected *no effect* on the error messages, compared
to not enabling it.

* Install libstdc++6:amd64 in the container

This does not add back libssl3:amd64 yet, in case it is not needed,
though I expect that it will be needed.
EliahKagan added a commit that referenced this pull request Nov 17, 2024
Installing `nodejs:amd64` in a 32-bit container to work around
actions/checkout#334 works by causing
64-bit libraries the external mapped `node20` needs (even though
`nodejs:amd64` in Debian is Node 18), as described in
actions/checkout#334 (comment).
But this installed more packages than are needed.

It turns out that, at least with this image, the only libraries the
container is missing are the 32-bit libstdc++ and its dependencies.
It is therefore sufficient to install the `libstdc++6:amd64`
package. This commit makes that change, squashing a few
investigatory steps that led to it (#5).

* See if libssl3:amd64 is all we need

* Temporarily omit even libssl3:amd64

With only `libssl3:amd64` and its dependencies, `actions/checkout`
did fail, but with a different error than before, showing a clear
error about a missing library, `libstdc++`.

    /usr/bin/docker exec  c1e55a75713e2c4fd08241fae9f4fecbe3cbb179be45174b3138390a1238090e sh -c "cat /etc/*release | grep ^ID"
    /__e/node20/bin/node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

Before trying adding that, I want to check that enabling `amd64` in
`dpkg` has the expected *no effect* on the error messages, compared
to not enabling it.

* Install libstdc++6:amd64 in the container

This does not add back libssl3:amd64 yet, in case it is not needed,
though I expect that it will be needed.
EliahKagan added a commit that referenced this pull request Nov 17, 2024
Installing `nodejs:amd64` in a 32-bit container to work around
actions/checkout#334 works by causing
64-bit libraries the external mapped `node20` needs (even though
`nodejs:amd64` in Debian is Node 18), as described in
actions/checkout#334 (comment).
But this installed more packages than are needed.

It turns out that, at least with this image, the only libraries the
container is missing are the 32-bit libstdc++ and its dependencies.
It is therefore sufficient to install the `libstdc++6:amd64`
package. This commit makes that change, squashing a few
investigatory steps that led to it (#5).

* See if libssl3:amd64 is all we need

* Temporarily omit even libssl3:amd64

With only `libssl3:amd64` and its dependencies, `actions/checkout`
did fail, but with a different error than before, showing a clear
error about a missing library, `libstdc++`.

    /usr/bin/docker exec  c1e55a75713e2c4fd08241fae9f4fecbe3cbb179be45174b3138390a1238090e sh -c "cat /etc/*release | grep ^ID"
    /__e/node20/bin/node: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

Before trying adding that, I want to check that enabling `amd64` in
`dpkg` has the expected *no effect* on the error messages, compared
to not enabling it.

* Install libstdc++6:amd64 in the container

This does not add back libssl3:amd64 yet, in case it is not needed,
though I expect that it will be needed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant