-
Notifications
You must be signed in to change notification settings - Fork 13.6k
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
ci: add test for Ubuntu 22.04 #23869
Conversation
Funny how both are failing. |
This pull request has been mentioned on Discussion Forum for PX4, Pixhawk, QGroundControl, MAVSDK, MAVLink. There might be relevant details there: |
Ubuntu 22.04 installation should be fixable using |
ed52ef7
to
4aa2893
Compare
2472252
to
c725c4f
Compare
@mrpollo When this goes in, please direct ping me via email or IM. Since the ubuntu.sh script no longer supporting the older ubuntu versions we need some significant doc updates - for example, older versions should point to the old scripts, but they might point to the Maybe you also need marketing around this - it is a pain for developers to be restricted to a particular ubuntu build. Unless they work on windows of course and can use WSL2. |
8a1aff7
to
5512233
Compare
* missing and updated dependencies * setup: install zeromq for ubuntu 24.04 * cleans up ubuntu script
5512233
to
3c67b01
Compare
As a start let's first keep this super simple to get it going in CI and then iterate. I've stripped it down to Ubuntu 22.04 in CI, installing the arm-none-eabi toolchain from packages (instead of custom /opt). Once that's building cleanly I'll merge and we can then do the rest incrementally. |
Next steps
|
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.
I tested on 22.04 and it works even with the packaged ARM GCC. What did we change. I'm almost certain I tested exactly these packages when 22.04 was still new and it failed just like on 20.04. Anyways nice, thank you for the cleanup.
@@ -408,8 +408,14 @@ include(px4_add_gtest) | |||
if(BUILD_TESTING) | |||
include(gtest) | |||
|
|||
set(TESTFILTERARG "") |
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.
@mrpollo May I ask why this was changed? I breaks the unit test filter because it ignores the argument and just always leaves it empty. Can we revert that part?
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.
For some reason something within gtest/ctest was failing when running make tests
. The failure was something like "Unknown -R argument."
What we did here is to avoid calling the test without -R
when there's no argument to filter through.
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.
Not sure what you mean but this change just breaks the filter. Now when working on any branch from latest main I have to wait for all the tests for every single development iteration 👀 Should I open a pr to revert?
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.
I think I found the problem: #23978 😅
There was a missing dependency that made it work, we were running into a linker issue, but @dagar fixed this by finding the missing dependencies |
@PetervdPerk-NXP Going forward, we will only support the last two LTS; this means Ubuntu 22.04 and Ubuntu 24.04 are our only supported versions of Ubuntu now. That said, I would be curious to test adding Ubuntu 18.04 to our CI to see how it deals with the changes. Regarding the version bump on GCC, we were able to fix the linker issues by installing a few missing dependencies. This PR adds a CI test so we can tell when it breaks. In #23937 I'm also adding support for Ubuntu 24.04, and moving the CI workflow to containers. |
@mrpollo Well I've got targets now that don't seem to build with GCC 13.2. EDIT it seems the #23937 containers still has GCC 9.3.1 installed but the ubuntu.sh doesn't install GCC 9.3.1. px4_fmu_v4 doesn't build with GCC 13.2
|
Little did I know my fix would not hold for GCC 13 👀 adb22f1 |
|
Tests the setup script for ubuntu under Ubuntu 22.04 by running a few checks defined in
make quick_checks