Comments (8)
Yeah, you can see here that rosdep
doesn't really install any ROS packages: https://github.com/ros-sports/humanoid_base_footprint/actions/runs/8342223887/job/22829915596#step:5:86. From what I understand, that workflow is configured not to install ROS 2 Rolling in setup-ros
and rely on rosdep
in action-ros-ci
to install required dependencies. However, for example, it can't find sensor_msgs
or ament_lint_common
for Jammy.
This is due to the switch to Ubuntu 24.04 Noble*. rosdep
now can only resolve Rolling packages on Ubuntu Noble, not Jammy. For example, I haven't run rosdep update
on my system for quite a while, so it does correctly resolve ament_cmake
for Ubuntu Jammy and Rolling (but not Ubuntu Noble and Rolling):
$ rosdep resolve ament_cmake --os=ubuntu:jammy --rosdistro=rolling
#apt
ros-rolling-ament-cmake
$ rosdep resolve ament_cmake --os=ubuntu:noble --rosdistro=rolling
ERROR: No definition of [ament_cmake] for OS version [noble]
No definition of [ament_cmake] for OS version [noble]
rosdep key : ament_cmake
OS name : ubuntu
OS version : noble
Data:
_is_ros: true
debian:
bullseye:
apt:
packages:
- ros-rolling-ament-cmake
osx:
homebrew:
packages:
- ros/rolling/ament_cmake
rhel:
'9':
dnf:
packages:
- ros-rolling-ament-cmake
ubuntu:
jammy:
apt:
packages:
- ros-rolling-ament-cmake
After running rosdep update
, it can resolve ament_cmake
for Ubuntu Noble and Rolling, but not Ubuntu Jammy and Rolling:
$ rosdep update
reading in sources list data from /etc/ros/rosdep/sources.list.d
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml
Query rosdistro index https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml
Skip end-of-life distro "ardent"
Skip end-of-life distro "bouncy"
Skip end-of-life distro "crystal"
Skip end-of-life distro "dashing"
Skip end-of-life distro "eloquent"
Skip end-of-life distro "foxy"
Skip end-of-life distro "galactic"
Skip end-of-life distro "groovy"
Add distro "humble"
Skip end-of-life distro "hydro"
Skip end-of-life distro "indigo"
Add distro "iron"
Skip end-of-life distro "jade"
Skip end-of-life distro "kinetic"
Skip end-of-life distro "lunar"
Skip end-of-life distro "melodic"
Add distro "noetic"
Add distro "rolling"
updated cache in /home/christophe.bedard/.ros/rosdep/sources.cache
$ rosdep resolve ament_cmake --os=ubuntu:jammy --rosdistro=rolling
ERROR: No definition of [ament_cmake] for OS version [jammy]
No definition of [ament_cmake] for OS version [jammy]
rosdep key : ament_cmake
OS name : ubuntu
OS version : jammy
Data:
_is_ros: true
debian:
bookworm:
apt:
packages:
- ros-rolling-ament-cmake
osx:
homebrew:
packages:
- ros/rolling/ament_cmake
rhel:
'9':
dnf:
packages:
- ros-rolling-ament-cmake
ubuntu:
noble:
apt:
packages:
- ros-rolling-ament-cmake
$ rosdep resolve ament_cmake --os=ubuntu:noble --rosdistro=rolling
#apt
ros-rolling-ament-cmake
We need ros-tooling/setup-ros#658 and #842 to be able to use Noble with setup-ros
and action-ros-ci
.
(*) assuming this kind of disruption is intended; see also https://discourse.ros.org/t/preparing-ros-2-rolling-for-the-transition-to-ubuntu-24-04/35673/10
from action-ros-ci.
It indeed does... after your suggestion to update!
For those reading this issue, you should bump your version of this setup-ros
action to the latest (0.7.7
or v0.7
at the time of writing).
from action-ros-ci.
@clalancette, @nuclearsandwich Any thoughts, why ament_cmake
package not found on the Rolling ros-action-ci scripts?
from action-ros-ci.
This is probably related to the move to Ubuntu 24.04. There's an open PR on standby for that, but it might still need some adjustments. I won't have access to a computer until this upcoming Monday, though.
from action-ros-ci.
I have similar issues (only on rolling, works with iron and humble). For rolling it finds some ament stuff, but doesn't find the ament_clang_format_cmake
package. Using [email protected] and [email protected].
I'm confused what to use as the build image. I use ubuntu-latest, but since noble has not been release yet, wouldn't that default to jammy, an OS that rolling already has transitioned away from?
-- Found ament_cmake_copyright: 0.16.3 (/opt/ros/rolling/share/ament_cmake_copyright/cmake)
-- Found ament_cmake_cppcheck: 0.16.3 (/opt/ros/rolling/share/ament_cmake_cppcheck/cmake)
-- Found ament_cmake_cpplint: 0.16.3 (/opt/ros/rolling/share/ament_cmake_cpplint/cmake)
CMake Error at CMakeLists.txt:64 (find_package):
By not providing "Findament_cmake_clang_format.cmake" in CMAKE_MODULE_PATH
this project has asked CMake to find a package configuration file provided
by "ament_cmake_clang_format", but CMake did not find one.
Could not find a package configuration file provided by
"ament_cmake_clang_format" with any of the following names:
ament_cmake_clang_formatConfig.cmake
ament_cmake_clang_format-config.cmake
from action-ros-ci.
In the case of ament_cmake_clang_format not found, this is due to ros-rolling-ament-cmake-clang-format not being installed during the setup phase. That package should be installed though because there is a dependency on it in package.xml, and there is also a rosdep db entry for ament_cmake_clang_format. The package also exists under rolling.
from action-ros-ci.
Have there been any updates on this? I've had contributions to several repos be blocked on Ubuntu 24.04 tests that use this action.
from action-ros-ci.
This should work fine if you're using Rolling on Ubuntu 24.04.
from action-ros-ci.
Related Issues (20)
- Option for Catkin Build for ROS 1 Projects HOT 1
- Split build and test steps
- Support other ways of selecting packages HOT 2
- Failed to build fork private repo (PR) HOT 9
- Args set using colcon-defaults do not reflect in workflow run HOT 9
- Can't load rclcpp::components in containers during test HOT 5
- Test failure on Galactic HOT 4
- ModuleNotFoundError: No module named 'catkin_pkg' when building ROS2 package using [email protected] HOT 2
- Skip `rosdep install` HOT 8
- wrong URL for GitHub Enterprise repos HOT 3
- [README Docs Request] A remark on setup-ros vs Docker already setup HOT 2
- Cannot get local files with vcs-repo-file-url HOT 3
- Have the default examples have the steps to install other DDS implementations
- Build Error on ROS Noetic HOT 5
- Source local setup after the build completes HOT 4
- Remove support for macOS HOT 1
- Allow to choose the option "--symlink-install"
- Action ignores failed rosdep install HOT 4
- missing pip since 0.3.8 HOT 13
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from action-ros-ci.