Skip to content
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

apriltag_ros: No definition of [apriltag] for OS version [Focal Fossa] #3

Closed
MihailV1989 opened this issue Dec 3, 2022 · 3 comments

Comments

@MihailV1989
Copy link

MihailV1989 commented Dec 3, 2022

I have an issue with rosdep and apriltag since some time (2-4 weeks I guess). I've been using the apriltag_ros package
https://github.com/christianrauch/apriltag_ros

for several months without an issue, but now on newly created workspace (and on the old one as well) with freshly git clone of apriltag_ros I run:

~/ros2_ws_test1$ rosdep install -i --from-path src --rosdistro galactic -y

And I get:

ERROR: the following packages/stacks could not have their rosdep keys resolved to system dependencies: apriltag_ros: No definition of [apriltag] for OS version [Focal Fossa]

I'm using ROS2 Galactic on Ubuntu 20.04.5 LTS (Codename focal) on a virtual machine (VirtualBox) and Win10 as host.

I tried rosdep update with no luck. I can still successfully build the package apriltag_ros, though I have to edit a line in CMakeLists.txt:

find_package(apriltag 3.3 REQUIRED) -> find_package(apriltag 3 REQUIRED)

As version 3.3 is still not released for ROS2. I also have to do some minor modifications to apriltag_ros node code work with the older 3.2 version, see:
christianrauch/apriltag_ros#11 (comment)

and then apriltag_ros runs fine. but I doubt there is connection to current problem. It seems like rosdep releated, isn't it?

@christianrauch
Copy link
Member

christianrauch commented Dec 3, 2022

Note: This release repo is for the ROS 1 version of the node. The node you reference is the ROS 2 implementation.

With only the msgs and the (ROS 2) node package in my workspace, rosdep install --from-paths src --ignore-src -y --simulate --reinstall will tell me, amongst others:

  sudo -H apt-get install -y ros-humble-apriltag

Generally, rosdep should work in resolving the dependencies.

But as you already saw, apriltag_ros needs a newer version of the apriltag library than what has been released to the ROS repo. So you have to check out the apriltag repo as part of your workspace and compile it all together.

@MihailV1989
Copy link
Author

MihailV1989 commented Dec 3, 2022

Thank you for the info, but it seems I really have an issue with rosdep, not with the apriltag library (see the solution at the bottom). I have now tried your rosdep command with other packages and I get the same error:

/ROS2_Workspace$ rosdep install --from-paths src --ignore-src -y --simulate --reinstall

ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
polisher_tracking: No definition of [python-yaml] for OS version [Focal Fossa]

I tried reinstalling rosdep as well by first removing it:

sudo apt-get remove python3-rosdep
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following package was automatically installed and is no longer required:
  python3-rosdep-modules
Use 'sudo apt autoremove' to remove it.
The following packages will be REMOVED:
  python3-rosdep
0 upgraded, 0 newly installed, 1 to remove and 2 not upgraded.
After this operation, 21.5 kB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 407908 files and directories currently installed.)
Removing python3-rosdep (0.22.1-1) ...

And installing it again:

sudo apt-get install python3-rosdep
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  python3-rosdep
0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
Need to get 3,304 B of archives.
After this operation, 21.5 kB of additional disk space will be used.
Get:1 http://repo.ros2.org/ubuntu/main focal/main amd64 python3-rosdep all 0.22.1-1 [3,304 B]
Fetched 3,304 B in 1s (5,818 B/s)          
Selecting previously unselected package python3-rosdep.
(Reading database ... 407897 files and directories currently installed.)
Preparing to unpack .../python3-rosdep_0.22.1-1_all.deb ...
Unpacking python3-rosdep (0.22.1-1) ...
Setting up python3-rosdep (0.22.1-1) ...

with no luck.

Note: This release repo is for the ROS 1 version of the node. The node you reference is the ROS 2 implementation.

We are currently writing in ros2-gbp/apriltag-release, why would this be for the ROS 1 version of the apriltag_ros node?

Anyway, this issue can be closed now, as it's not related to apriltag at all.

If someone else has the same problem, he/she should look at this issue:
ros-infrastructure/rosdep#779

Running rosdep with the --os=ubuntu:focal param seems to fix my issue.

@christianrauch
Copy link
Member

Note: This release repo is for the ROS 1 version of the node. The node you reference is the ROS 2 implementation.

We are currently writing in ros2-gbp/apriltag-release, why would this be for the ROS 1 version of the apriltag_ros node?

Whoops, I got confused a bit there because you mentioned the ROS nodes. But anyway, there is nothing in the release repo that can fix the association between rosdep keys and the release repos. This relation is managed in rosdistro. The distribution.yaml for the ROS distribution contains this relation and you can see from the apriltag key there that it points to this release repo.

If you need a new release, I suggest creating an issue in the upstream repo or here and pinging the release maintainers.

Anyway, this issue can be closed now, as it's not related to apriltag at all.

If someone else has the same problem, he/she should look at this issue: ros-infrastructure/rosdep#779

Running rosdep with the --os=ubuntu:focal param seems to fix my issue.

Great that you found a solution to your problem. I will go ahead and close this issue.

@christianrauch christianrauch closed this as not planned Won't fix, can't repro, duplicate, stale Dec 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants