-
Notifications
You must be signed in to change notification settings - Fork 277
Avoid spurious libgcc-s1 Debian package dependency #5877
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
Avoid spurious libgcc-s1 Debian package dependency #5877
Conversation
Codecov Report
@@ Coverage Diff @@
## develop #5877 +/- ##
========================================
Coverage 72.90% 72.90%
========================================
Files 1425 1425
Lines 154282 154282
========================================
Hits 112485 112485
Misses 41797 41797 Continue to review full report at Codecov.
|
d286556
to
686f136
Compare
@@ -375,6 +375,7 @@ jobs: | |||
run: | | |||
sudo apt-get update | |||
sudo apt-get install --no-install-recommends -y g++ flex bison cmake ninja-build maven jq libxml2-utils dpkg-dev ccache | |||
sudo apt-get --purge remove -s libgcc-s1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Huh, that seems screwy? So the github actions ubuntu-18.04 container isn't necessarily actually ubuntu-18.04?
For curiosities sake, how did you detemine this was the issue? |
The cleaner answer here could be do build that package in a docker container (Github actions does this). The problem with the proposed tweak is that Github may well choose to make further changes to their standard image, and then the issue is back. |
@tautschnig Following @kroening's comment here, I believe the correct thing to do would be to specify this running on the ubuntu:18.04 docker image via the container attribute, then we don't have to remove packages which seems slightly sketchy anyway. TBH I didn't realise that the actions images had so much nonstandard stuff in them when we came up with these actions. |
672733e
to
3d3eed2
Compare
7f213db
to
4fb7ebc
Compare
GitHub actions have GCC 10 available, which resulted in GCC libraries being upgraded as well. Forcibly downgrade this to Bionic's (18.04) native version, removing GCC 9 and 10 along the way. Using `container: ubuntu:18.04` would potentially be a cleaner solution, but our use of submodules requires Git >= 2.18, which isn't in Ubuntu 18.04. So we'd need to start mixing version along a different path. Fixes: diffblue#5875
4fb7ebc
to
8514130
Compare
I tried this avenue, but then our use of submodules requires git 2.18, which isn't in Ubuntu 18.04. Thus sticking with the force-downgrade option for now. Marking the PR as ready-for-review as the logs confirmed that libgcc-s1 no longer is among the dependencies being generated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Can you further explain what aspects of submodules aren't working with git 2.17? I am using ubuntu 18.04 locally and I haven't seen any submodule related issues. |
See https://github.com/diffblue/cbmc/runs/2021105147 for one of the past logs. That says:
|
@tautschnig That seems like an issue with the github action we use for fetching the code. I don't think that's a real blocker for building on 18.04 proper, worst case we can just work around that. |
Up to you. Can I suggest we put a fix in place before merging #5883 today? This might be merging this PR and doing a cleaner solution later on, or someone making the container solution work today. |
@tautschnig seems good to me, plan is to merge this and put building in docker in the mid-term |
Marked as Draft (and do-not-merge, do-not-review), includes extra debug output.
Do not add a strict dependency on gcc, which in a GitHub container isn't
necessarily the same version as in a pristine Ubuntu system.
Fixes: #5875