open-rmf / rmf

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

RMF build error #317

Closed sajidmohd717 closed 1 year ago

sajidmohd717 commented 1 year ago

Bug report

Required information:

Description of the bug

While following the install and build instructions, everything is smooth sailing up till "compile using clang" section. We get a build error. This has happened multiple times across multiple laptop and across multiple people building rmf. You can see the error code in the screen shot below.

Steps to reproduce the bug

  1. Install ubuntu 22.04
  2. Install ROS humble
  3. Go to readme of rmf, install rmf for humble from source
  4. When you are in the "compile using clang" and then more on to "compile the workspace" while building the workspace, you get this error

Expected behavior

Expected behavior is that, we should not be getting any build errors

Actual behavior

you can see from the screenshot what is the build error that we get

Screenshots

image

Additional information

jash101 commented 1 year ago

I'm facing same issue. Were you able to solve this @sajidmohd717?

arjo129 commented 1 year ago

Can I check which version of gazebosim you have installed?

ign gazebo --versions

This is probably a bug upstream with gazebosim triggered by the renaming. One possibility is that you have an older version of gz-utils installed.

(also if you just want to build without support for the new gazebo it should be possible via --packages-skip rmf_building_sim_gz).

jash101 commented 1 year ago

I have 6.14.0 installed. Will installing Gazebo Garden fix this issue?

sajidmohd717 commented 1 year ago

I have 6.14.0 installed as well.

aaronchongth commented 1 year ago

I just completed a fresh build without issues, and our chron job also built it without issues, https://github.com/open-rmf/rmf/actions/runs/4301518131/jobs/7498836565#step:4:15669

I currently have libignition-plugin at 1.4.0-1~jammy and libignition-utils1 at 1.5.1-1~jammy. With the rosdep step it should help install all required dependencies as well. I would suggest these few sanity checks,

Will installing Gazebo Garden fix this issue?

No, I currently only have Fortress installed and we target that only too, so it won't help.

xiyuoh commented 1 year ago

I managed to reproduce and resolve this issue with these few steps, hope they work for you as well: Cleanup:

Build:

Not entirely sure why building them separately worked for me

arjo129 commented 1 year ago

I have 6.14.0 installed. Will installing Gazebo Garden fix this issue?

No garden is not yet supported on RMF's main branch. We will have to investigate this failure. In the mean time I recommend using gazebo classic and skipping the build of the affected package.

lkw303 commented 1 year ago

I believe I faced the same issue previously mentioned here open-rmf/rmf_simulation#96. It seems that the issue is due to a lower version of the libignition-cmake2-dev being installed.

libignition-cmake2-dev:
  Installed: 2.14.0-2~jammy
  Candidate: 2.16.0-1~jammy
  Version table:
     2.16.0-1~jammy 500
        500 http://packages.osrfoundation.org/gazebo/ubuntu-stable jammy/main amd64 Packages
 *** 2.14.0-2~jammy 500
        500 http://packages.ros.org/ros2/ubuntu jammy/main amd64 Packages

Simply upgrading this apt package to the candidate version was sufficient for me to resolve this issue, although I am not entirely sure why this particular version of libignition-cmake2-dev was installed rather than the candidate version.

jash101 commented 1 year ago

It seems that the issue is due to a lower version of the libignition-cmake2-dev being installed.

You're right, having a version of libignition-cmake2-dev which is not 2.16.0-1 causes this error, and reinstalling Ignition Fortress fixes it.

The build finishes, but with error SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools in some packages. I also found fastapi and uvicorn weren't installed in my system.

A workaround is:

pip install setuptools==58.2.0
python3 -m pip install flask-socketio fastapi uvicorn datamodel_code_generator

Build again and it should work fine.

I am, however, facing issue with the RMF web Panel where nothing appears in the 'request type' dropdown.

I suggest editing readme to make it easier for others to build from source. Happy to do so.

arjo129 commented 1 year ago

Contributions are welcome, however the README already asks you to install the python dependencies you mentioned. As for the setuptools deprecation warning, its fine as I believe there is still time till setuptools becomes unsupported. By which time we will hopefully have a way to create python projects without setuptools in ROS.