-
Notifications
You must be signed in to change notification settings - Fork 258
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
{rolling} WIP: Enable ROS Visualization tools #1144
Conversation
Signed-off-by: Rob Woolley <[email protected]>
Signed-off-by: Matthias Schoepfer <[email protected]> Signed-off-by: Rob Woolley <[email protected]>
Signed-off-by: Matthias Schoepfer <[email protected]>
Set the correct SPDX identifier for the package. Install the license files into the correct directory if LICENSE_CREATE_PACKAGE is set and we are building license packages. Signed-off-by: Matthias Schoepfer <[email protected]> Signed-off-by: Rob Woolley <[email protected]>
Updated to version 1.19.20240304 which is currently used on ROS 2 Rolling. It no longer needs the patch which has disappeared upstream. Signed-off-by: Matthias Schoepfer <[email protected]> Signed-off-by: Rob Woolley <[email protected]>
These fixes are mostly setting LICENSE to BSD-3-Clause to conform with SPDX short descriptions. Otherwise, "BSD" License will not be found (since it is ambiguous). Signed-off-by: Matthias Schoepfer <[email protected]> Signed-off-by: Rob Woolley <[email protected]>
Introduce a yocto recipe for orocos-kdl, which basically makes any appends to orocos-kdl-vendor obsolete. Signed-off-by: Matthias Schoepfer <[email protected]>
Signed-off-by: Matthias Schoepfer <[email protected]>
Signed-off-by: Matthias Schoepfer <[email protected]>
Signed-off-by: Matthias Schoepfer <[email protected]>
These fixes are mostly setting LICENSE to BSD-3-Clause to conform with SPDX short descriptions. Otherwise, "BSD" License will not be found (since it is ambiguous). Signed-off-by: Matthias Schoepfer <[email protected]> Signed-off-by: Rob Woolley <[email protected]>
These fixes are mostly setting LICENSE to BSD-3-Clause to conform with SPDX short descriptions. Otherwise, "BSD" License will not be found (since it is ambiguous). Signed-off-by: Matthias Schoepfer <[email protected]> Signed-off-by: Rob Woolley <[email protected]>
This fixes longstanding issues preventing Gazebo/Ignition and RViz2 from building with meta-ros. This includes work to resolve Ogre-Next, PyQt5, and SIP. This is a work-in-progress and is not yet completed. Signed-off-by: Rob Woolley <[email protected]>
Is this currently building/working? I see you have a separate PR open for ROS2 Humble + kirkstone support. How does this one differ? Can this be built against scarthgap? |
Hi @graceagrace, they are both works-in-progress (WIP). I was sharing them with others in the hopes to get some help finishing it off. All the recipes were building, but some projects have optional dependencies that aren't satisfied yet. Notably, things like the ogre 3d engine which have support for different image libraries and plugins. I also didn't get to doing rigorous run-time testing however I did hear that some others were successful in running the GUIs. The main difference between the two is that the older Yocto release uses sip v4 to generate the Qt Python bindings whereas the newer release uses sip v6 (see https://layers.openembedded.org/layerindex/recipe/332209/ ). This essentially doubled the effort. The newer Yocto release also uses gcc13 so at the time I was having to fix a lot of new C++ warnings in the compiler that hadn't been completely addressed yet by the upstream projects. |
@robwoolley, thanks very much for the detailed reply. I am working on an image for developers that requires RVIZ and some Gazebo plugins. I plan to do a fair bit of runtime testing, so I'll certainly report back with any findings/additional patches required. Is there a certain state you'd like to get this to before you would feel comfortable merging? Is it taking care of the optional deps, or something else? |
I would be happy with confirmation that someone built it and ran it. I think it is more important to get it in to avoid bit rot and allow others to pitch in to fix it. It should only be built by request so it shouldn't block anyone else. You probably need this fix in order for it to work: robwoolley/meta-openembedded@3c4c1e8 I will try to find some time to push that to meta-openembedded soon. |
Hi @robwoolley, Some good news - I got all packages building and got RVIZ running with the scarthgap + humble combination. I made my own fork of meta-ros here, with branch I also made a fork to meta-qt5 here, with branch I'm very excited to see this working, though! My target setup is essentially qemux86_64 - I built an OCI image with ros-core and rviz2 and ran it using Podman. Have not tested on an ARM machine, yet, because I don't typically use viz tools on deployment targets. All this to say - I think your PR is good to merge. I need to clean up my commit history quite a bit, as I had some false starts and went down a few debugging rabbit holes for that OGRE runtime issue, but I'd be happy to put in a PR with my humble-specific changes afterwards. Looking forward to hearing your thoughts. EDIT: Also worth noting are my local.conf settings: |
@graceagrace This is fantastic! Thank you so much for confirming that this works and sharing the screenshot. I included it as part of the working group minutes in today's meeting: https://docs.google.com/document/d/1LqUjcu6vdlqVJO62SreCyjzddNDZhfO2n-7qYghY_cQ/edit?tab=t.0 FYI, I submitted the python split changes to meta-qt5 last week. I am hoping they get merged in soon: meta-qt5/meta-qt5#588 I'll try to find some time to revise my earlier patches and add your fixes to the series. I look forward to adding your patches as I got exhausted from trying to track down all the missing dependencies myself. |
@robwoolley, sounds great! I'd be happy to know any feedback/suggested changes to my patches. In particular, my patch to Glad to hear you submitted the appropriate changes to meta-qt5 - thanks for doing that. And thanks for your continued support of the community! |
Merged into master. Here are the steps to build successfully: # Follow the instructions on using kas in the build branch
# Cherry pick my PRs on GitHub: https://github.com/meta-qt5/meta-qt5/pulls
All the variants should now work: ros-core, ros-base, perception, simulation, desktop, and desktop-full Each builds on the previous variant with desktop-full as the superset of them all |
This fixes longstanding issues preventing Gazebo/Ignition and RViz2 from building with meta-ros.
This includes work to resolve Ogre-Next, PyQt5, and SIP.
This is a work-in-progress and is not yet completed. It is being shared for feedback and for others that wish to help contribute to fixing bugs or doing testing.