open-rmf / rmf

Root repository for the RMF software
Apache License 2.0
223 stars 57 forks source link

Cannot use the following command: `sudo apt update && sudo apt install ros-rolling-rmf-dev` #459

Open ibrahimdevoloper opened 2 months ago

ibrahimdevoloper commented 2 months ago

Before proceeding, is there an existing issue or discussion for this?

Description

Hello,

I am installing the openRMF in ubuntu 22.04 with rolling version of ros.

when I try to complete the step of this command: sudo apt update && sudo apt install ros-rolling-rmf-dev

I receive the following response:

pi@ubuntu:~$ sudo apt update && sudo apt install ros-rolling-rmf-dev
Hit:1 http://ports.ubuntu.com/ubuntu-ports jammy InRelease
Hit:2 http://ports.ubuntu.com/ubuntu-ports jammy-updates InRelease
Hit:3 http://ports.ubuntu.com/ubuntu-ports jammy-backports InRelease
Hit:4 http://ports.ubuntu.com/ubuntu-ports jammy-security InRelease
Hit:5 http://packages.ros.org/ros2/ubuntu jammy InRelease
Hit:6 http://packages.osrfoundation.org/gazebo/ubuntu-stable jammy InRelease
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
2 packages can be upgraded. Run 'apt list --upgradable' to see them.
W: http://packages.osrfoundation.org/gazebo/ubuntu-stable/dists/jammy/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-rolling-rmf-dev

Can you please help? where should I begin seaching or what I am missing?

Thank you very much for your kind response, in advance.

Yadunund commented 2 months ago

rmf_simulation which is a dependency of rmf-dev is not yet released on rolling with Ubuntu 24.04.

It should be available soon.

For the time being, could you use Iron/Humble on 22.04?

ibrahimdevoloper commented 2 months ago

Hello,

I have tried the humble version. the same problem exists.

What should I do?

Yadunund commented 2 months ago

That is strange...

Have you added ROS 2 repository to your apt sources? ie followed instructions here?

I can't reproduce the error. See below.

yadunund@ubuntu-22-04:~$ apt-cache policy ros-humble-rmf-dev
ros-humble-rmf-dev:
  Installed: 0.0.1-1jammy.20240327.181631
  Candidate: 0.0.1-1jammy.20240327.181631
  Version table:
 *** 0.0.1-1jammy.20240327.181631 500
        500 http://packages.ros.org/ros2/ubuntu jammy/main amd64 Packages
        100 /var/lib/dpkg/status
ibrahimdevoloper commented 2 months ago

I have this response:

pi@ubuntu:~$ sudo apt update && sudo apt install ros-humble-rmf-dev
Hit:1 http://ports.ubuntu.com/ubuntu-ports jammy InRelease
Hit:2 http://ports.ubuntu.com/ubuntu-ports jammy-updates InRelease
Hit:3 http://ports.ubuntu.com/ubuntu-ports jammy-backports InRelease
Hit:4 http://ports.ubuntu.com/ubuntu-ports jammy-security InRelease
Hit:5 http://packages.ros.org/ros2/ubuntu jammy InRelease
Get:6 http://packages.osrfoundation.org/gazebo/ubuntu-stable jammy InRelease [4,276 B]
Get:7 http://packages.osrfoundation.org/gazebo/ubuntu-stable jammy/main arm64 Packages [105 kB]
Fetched 109 kB in 3s (35.4 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
2 packages can be upgraded. Run 'apt list --upgradable' to see them.
W: http://packages.osrfoundation.org/gazebo/ubuntu-stable/dists/jammy/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-humble-rmf-dev
pi@ubuntu:~$ apt-cache policy ros-humble-rmf-dev
N: Unable to locate package ros-humble-rmf-dev
pi@ubuntu:~$ ^C
pi@ubuntu:~$
Yadunund commented 2 months ago

W: http://packages.osrfoundation.org/gazebo/ubuntu-stable/dists/jammy/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.

This looks suspicious. Can you confirm that you followed instructions here to enable the required repositories ? ie can you install other ROS packages?

ibrahimdevoloper commented 2 months ago

I installed humble, rolling and iron, it seems that the repository is not available.

luca-della-vedova commented 1 month ago

I see a pi@ubuntu in your workspace, by any chance are you running on a Raspberry Pi? The rmf-dev package is not available for arm64 but only amd64 https://packages.ros.org/ros2/ubuntu/pool/main/r/ros-humble-rmf-dev/

Other core packages are available and you should be able to install them.

ibrahimdevoloper commented 1 month ago

Hello,

The problem is that we need the development libraries to develop our own application inside the raspberry, and most if not all are not available. what do you propose as a solution? To make Open RMF work using raspberry, is essential to our application.

I tried to install Open RMF using Binary Installation and Building from source, however. It requires development libraries that are not found.

Thank you for reading.

luca-della-vedova commented 1 month ago

Can you elaborate more on what you are exactly trying to do? I would argue that it would be the best if the "core" of Open-RMF runs on a machine that is more performing than a raspberry pi, especially since nodes such as fleet adapters might need a fair bit of computational power to solve complex traffic negotiations.

Still though, I believe the only part that is missing is the simulation packages, and that is actually due to Gazebo itself not supporting arm64 but only amd64 as shown here, but that is not really in our control. You should still be able to install all the other libraries you want, just not the simulation packages

ibrahimdevoloper commented 1 month ago

We are trying to implement Open RMF inside Raspberry pi to be both Server and a Client inside its network the network. The server is stationary raspberry while while robots have a raspberry pi as a main possessor that handles the communication between peripherals (i.e sensors).

Also don't we need the ros-humble-rmf-dev libraries to develop an application that communicate with Open RMF, or does Open RMF have a separate API for communication with Open RMF?

Yadunund commented 1 month ago

@ibrahimdevoloper could try installing ros-humble-rmf-fleet-adapter? That should install most of what you need.

Alternatively, gz sim binaries are now available for arm64 on noble. See https://github.com/osrf/ros2_test_cases/issues/1274. But in order to install rmf-dev, we would need to remove all our gz_clsssic packages and bloom a new release of rmf_simulation and rmf_traffic_editor into rolling/jazzy. But this will take some time (likely after jazzy is released).