Catkin plugin doesn't build pure python workspaces
Metadata
Current evaluation
Catkin plugin only staged g++ when roscpp was a dependency, breaking pure-Python ROS workspaces. Fixed by snapcore/snapcraft PR #881 (merged as 2f0c8ba04), staging gcc/g++ unconditionally; issue closed by maintainer ~kyrofa.
Resolution: closed resolved
Reason: Maintainer ~kyrofa commented 'Fix: https://github.com/snapcore/snapcraft/pull/881' on 2016-11-01; that PR (canonical/snapcraft#881) was merged as commit 2f0c8ba04, changing the catkin plugin to stage gcc/g++ unconditionally at the start of the build rather than only when roscpp is a dependency.
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Catkin plugin only staged g++ when roscpp was a dependency, breaking pure-Python ROS workspaces. Fixed by snapcore/snapcraft PR #881 (merged as 2f0c8ba04), staging gcc/g++ unconditionally; issue closed by maintainer ~kyrofa. | |
| stealth/space-bunny-alpha | — | closed resolved | Catkin plugin only staged g++ when roscpp was present, breaking pure-Python ROS workspaces. Fixed by canonical/snapcraft#881 (commit 2f0c8ba04), merged 2016-11-01, staging gcc/g++ unconditionally for Catkin builds. | |
| stealth/space-bunny-alpha | — | closed resolved | Fixed by merged canonical/snapcraft#881 (2f0c8ba04), adding gcc/g++ unconditionally for Catkin builds so Python-only workspaces no longer need roscpp. | |
| qwen/qwen3.6-35b-a3b | — | — | Abandoned due to inactivity. The catkin plugin incorrectly omits gcc and g++ for pure Python ROS workspaces, though both compilers are required. No fix or follow-up was provided. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without documented resolution or fix, likely abandoned due to zero comments. The reported catkin plugin build dependency issue for pure Python workspaces remains unresolved. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
canonical/snapcraft#881
(confidence 97%)
Merged PR titled 'Catkin plugin: Python nodes require gcc/g++ too.', explicitly referencing LP bug #1638317; merged as commit 2f0c8ba04.
-
Related To:
canonical/snapcraft#2585
(confidence 40%)
Later catkin plugin work (#2585, commit b88e37814) changed how workspace dependencies are resolved, but it does not directly address the gcc/g++ staging defect.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1658828 Catkin plugin stages compilers | snapcraft (launchpad) | closed | Catkin no longer stages compilers: snapcore/snapcraft#1070 (ea8736af4) moved them to an alternate work area, keeping compiler bloat out of ROS snaps. | |
| #1628990 Catkin plugin: example doesn't build on vanilla install | snapcraft (launchpad) | closed | Fixed by merged PR snapcore/snapcraft#840 (commit 7f9fa3ac1): Catkin builds now use in-snap Python and add gcc, libc-dev and make as build-packages, so the example builds on a vanilla system. Closed by maintainer ~kyrofa. | |
| #1832044 Catkin plugin doesn't check the workspace for dependencies | snapcraft (launchpad) | closed | Catkin plugin failed on whole-workspace builds because rosdep (#685) couldn't resolve deps satisfied by in-workspace packages. Workaround merged in snapcraft PR #2585 (commit b88e37814); the workaround was later dropped in #2833 once rosdep was fixed upstream. | |
| #881 Catkin plugin: Python nodes require gcc/g++ too. | snapcraft | merged | Merged as commit 2f0c8ba04: catkin plugin now stages gcc/g++ unconditionally at the start of the build (instead of only when roscpp is a dependency), fixing LP bug #1638317. | |
| #1663385 Catkin plugin: Staging area not suitable for building other parts | snapcraft (launchpad) | closed | Catkin staging output was made reusable by later parts: merged snapcraft#1130 rewrote ROS-specific paths after building, fixing LP #1663385. | |
| #840 Catkin plugin: build with in-snap python. | snapcraft | merged | Merged #840 as 7f9fa3ac1, fixing LP #1628990 by using in-snap Python during Catkin builds and adding gcc, libc-dev, and make as build packages. | |
| #1721168 Catkin plugin: support building the entire workspace | snapcraft (launchpad) | closed | Implemented in snapcraft PR #1743 (commit ec4cac26a, "catkin plugin: support building entire workspace"), merged ~Nov 2017. catkin-packages became optional: omitting it builds the whole workspace, while an empty list still means no packages. | |
| #1070 catkin plugin: don't stage compilers. | snapcraft | merged | Merged PR #1070 as commit ea8736af4, moving required Catkin compilers to an alternate work area so they are available during builds but excluded from final snaps; fixes LP #1658828. | |
| #1548404 Catkin plugin: Can't handle rosdep resolving to multiple packages | snapcraft (launchpad) | closed | Fixed by ubuntu-core/snapcraft PR #331 (commit 1c1119ce3, 'Catkin plugin: Handle rosdep empty and multiple dependencies'), merged as e3a2b9d03; maintainer ~kyrofa linked the PR when closing the Launchpad bug. | |
| #2847 Catkin plugin: consider only 'local' workspaces | snapcraft | merged | Merged PR #2847 (commit 1d476f622) sources ROS setup with --local, preventing destructive-mode Catkin builds from using host workspaces and skipping dependency installation. |