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

REPORT - Package build week 20221107 - 20221112 #265

Closed
orensbruli opened this issue Nov 6, 2022 · 5 comments
Closed

REPORT - Package build week 20221107 - 20221112 #265

orensbruli opened this issue Nov 6, 2022 · 5 comments
Labels
report Reports about the current state of the packages of rmf

Comments

@orensbruli
Copy link
Contributor

Builds: https://github.com/open-rmf/rmf/blob/main/reports/builds.md
This week we are focused on rhel packages.

@orensbruli orensbruli added the bug Something isn't working label Nov 6, 2022
@orensbruli
Copy link
Contributor Author

orensbruli commented Nov 6, 2022

20221107

Humble

Failed

Aborted

graph TD
rmf_websocket --> __nlohmann_json_schema_validator__

Loading

Disabled

graph TD
rmf_visualization_schedule --> rmf_visualization_schedule_SRC
rmf_traffic_ros2 --> rmf_traffic_ros2_SRC
rmf_traffic_ros2 --> rmf_fleet_adapter
rmf_traffic_ros2 --> rmf_task_ros2
rmf_traffic_ros2 --> rmf_visualization_navgraphs
rmf_traffic_ros2 --> rmf_visualization_rviz2_plugins
rmf_traffic_ros2 --> rmf_visualization_schedule
rmf_visualization_rviz2 --> rmf_visualization_rviz2_SRC
rmf_visualization_rviz2 --> rmf_traffic_ros2
rmf_visualization --> rmf_visualization_rviz2
rmf_visualization_navgraphs --> rmf_visualization_navgraphs_SRC
rmf_visualization --> rmf_visualization_navgraphs__rhel_8_x86_64__binary
rmf_visualization --> rmf_visualization_rviz2_plugins__rhel_8_x86_64__binary
rmf_visualization --> rmf_visualization_schedule__rhel_8_x86_64__binary
rmf_visualization --> rmf_visualization_SRC
rmf_traffic_editor_test_maps
Loading

Need to ask why and how to reenable.

@orensbruli
Copy link
Contributor Author

orensbruli commented Nov 8, 2022

20221108

nlohmann_json_schema_validator_vendor Build Status

08:20:07 DEBUG: /builddir/build/BUILD/ros-humble-nlohmann-json-schema-validator-vendor-0.2.1/.obj-x86_64-redhat-linux-gnu/nlohmann_json_schema_validator-1063c9adbafc25f5a14bae15c3babdb039de86c6-prefix/src/nlohmann_json_schema_validator-1063c9adbafc25f5a14bae15c3babdb039de86c6/src/nlohmann/json-schema.hpp:28:4: error: #error "Please use this library with NLohmann's JSON version 3.8.0 or higher"
08:20:07 DEBUG:  #  error "Please use this library with NLohmann's JSON version 3.8.0 or higher"
08:20:07 DEBUG:     ^~~~~
  • rosdep points to json-devel for rhel and fedora: https://github.com/ros/rosdistro/blob/master/rosdep/base.yaml#L6554

  • Installing EPEL on a UBI8 image

  • Checking json-devel version on RHEL8

    • dnf list json-devel ==> json-devel.x86_64 3.6.1-2.el8
    • But we need at least 3.8
    • Is the solution to vendor the json-devel package?
    • is UBI9/rhel9 an option? 🤔
  • Options instead of vendoring:

    • Getting the package updated in RHEL 8 it unlikely. The maintainer had a shot at doing that in EPEL 7 with this package and it evidently didn't go well.
    • We could consider vendoring an older version of the validator which has a looser version requirement.
    • The package is indeed newer in RHEL 9, but we're absolutely not ready to start building packages there. RHEL 9.1 will ship very, very soon, and that's going to help us a lot, but there's still a bunch of work that needs to be done. We should come up with a RHEL 8 solution in the mean time.
    • If the package is only used for tests, we could let it continue to fail and patch it out of the downstream packages so that they don't need it anymore.
  • We are currently using the only release of the original package:

  • Looking for the commit when this check was introduced:

  • Trying to point our vendoring to the commit prior to the dependence to 3.8 and try to build.

sudo apt update && sudo apt install  git cmake python3-vcstool curl python3-colcon* wget  python3-rosdep -y
python3 -m pip install flask-socketio fastapi uvicorn datamodel_code_generator
sudo rosdep init
rosdep update
mkdir -p ~/rmf_ws/src
cd ~/rmf_ws
wget https://raw.githubusercontent.com/open-rmf/rmf/main/rmf.repos
vcs import src < rmf.repos
rosdep install --from-paths src --ignore-src --rosdistro humble -y
sudo apt update
sudo apt install clang lldb lld -y
colcon mixin add default https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
colcon mixin update default
cd ~/rmf_ws
source /opt/ros/humble/setup.bash

export CXX=clang++
export CC=clang
#colcon build --mixin release lld

pybind11_json_vendor Build Status

08:22:29 DEBUG: warning: Empty %files file /builddir/build/BUILD/ros-humble-pybind11-json-vendor-0.2.0/debugsourcefiles.list
08:22:29 DEBUG: error: Installed (but unpackaged) file(s) found:
08:22:29 DEBUG:    /builddir/build/BUILD/ros-humble-pybind11-json-vendor-0.2.0/.obj-x86_64-redhat-linux-gnu/pybind11_json/include/pybind11_json/pybind11_json.hpp
08:22:29 DEBUG:    /builddir/build/BUILD/ros-humble-pybind11-json-vendor-0.2.0/.obj-x86_64-redhat-linux-gnu/pybind11_json/share/cmake/pybind11_json/pybind11_jsonConfig.cmake
08:22:29 DEBUG:    /builddir/build/BUILD/ros-humble-pybind11-json-vendor-0.2.0/.obj-x86_64-redhat-linux-gnu/pybind11_json/share/cmake/pybind11_json/pybind11_jsonConfigVersion.cmake
08:22:29 DEBUG:    /builddir/build/BUILD/ros-humble-pybind11-json-vendor-0.2.0/.obj-x86_64-redhat-linux-gnu/pybind11_json/share/cmake/pybind11_json/pybind11_jsonTargets.cmake
08:22:29 DEBUG:     Empty %files file /builddir/build/BUILD/ros-humble-pybind11-json-vendor-0.2.0/debugsourcefiles.list
08:22:29 DEBUG:     Installed (but unpackaged) file(s) found:
08:22:29 DEBUG:    /builddir/build/BUILD/ros-humble-pybind11-json-vendor-0.2.0/.obj-x86_64-redhat-linux-gnu/pybind11_json/include/pybind11_json/pybind11_json.hpp
08:22:29 DEBUG:    /builddir/build/BUILD/ros-humble-pybind11-json-vendor-0.2.0/.obj-x86_64-redhat-linux-gnu/pybind11_json/share/cmake/pybind11_json/pybind11_jsonConfig.cmake
08:22:29 DEBUG:    /builddir/build/BUILD/ros-humble-pybind11-json-vendor-0.2.0/.obj-x86_64-redhat-linux-gnu/pybind11_json/share/cmake/pybind11_json/pybind11_jsonConfigVersion.cmake
08:22:29 DEBUG:    /builddir/build/BUILD/ros-humble-pybind11-json-vendor-0.2.0/.obj-x86_64-redhat-linux-gnu/pybind11_json/share/cmake/pybind11_json/pybind11_jsonTargets.cmake

@orensbruli orensbruli added report Reports about the current state of the packages of rmf and removed bug Something isn't working labels Nov 8, 2022
@orensbruli
Copy link
Contributor Author

orensbruli commented Nov 9, 2022

20221109

rmf_task Build Status

Failing jenkin job: https://build.ros2.org/job/Hbin_rhel_el864__rmf_task__rhel_8_x86_64__binary/41/console
repo: https://github.com/open-rmf/rmf_task
undefined references to std::filesystem::__cxx11

08:21:23 DEBUG: RPM build errors:
08:21:23 DEBUG: ::path::_M_split_cmpts()'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_ops.h:121: undefined reference to `std::filesystem::status(std::filesystem::__cxx11::path const&)'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_ops.h:121: undefined reference to `std::filesystem::status(std::filesystem::__cxx11::path const&)'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_ops.h:121: undefined reference to `std::filesystem::status(std::filesystem::__cxx11::path const&)'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_ops.h:121: undefined reference to `std::filesystem::status(std::filesystem::__cxx11::path const&)'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_ops.h:121: undefined reference to `std::filesystem::status(std::filesystem::__cxx11::path const&)'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_ops.h:121: undefined reference to `std::filesystem::status(std::filesystem::__cxx11::path const&)'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `C_A_T_C_H_T_E_S_T_0()':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:258: undefined reference to `std::filesystem::__cxx11::path::has_filename() const'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:261: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:258: undefined reference to `std::filesystem::__cxx11::path::has_filename() const'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:261: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:258: undefined reference to `std::filesystem::__cxx11::path::has_filename() const'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:261: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `__static_initialization_and_destruction_0(int, int) [clone .constprop.211]':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:185: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: CMakeFiles/test_rmf_task.dir/test/integration/test_backups.cpp.o: In function `std::filesystem::__cxx11::path::operator/=(std::filesystem::__cxx11::path const&)':
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:381: undefined reference to `std::filesystem::__cxx11::path::has_root_directory() const'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:258: undefined reference to `std::filesystem::__cxx11::path::has_filename() const'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:261: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: /usr/include/c++/8/bits/fs_path.h:261: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
08:21:23 DEBUG: librmf_task.so: undefined reference to `std::filesystem::__cxx11::directory_iterator::operator*() const'
08:21:23 DEBUG: librmf_task.so: undefined reference to `std::filesystem::remove(std::filesystem::__cxx11::path const&)'
08:21:23 DEBUG: librmf_task.so: undefined reference to `std::filesystem::create_directories(std::filesystem::__cxx11::path const&)'
08:21:23 DEBUG: librmf_task.so: undefined reference to `std::filesystem::__cxx11::directory_iterator::operator++()'
08:21:23 DEBUG: librmf_task.so: undefined reference to `std::filesystem::rename(std::filesystem::__cxx11::path const&, std::filesystem::__cxx11::path const&)'
08:21:23 DEBUG: librmf_task.so: undefined reference to `std::filesystem::__cxx11::directory_iterator::directory_iterator(std::filesystem::__cxx11::path const&, std::filesystem::directory_options, std::error_code*)'
08:21:23 DEBUG: librmf_task.so: undefined reference to `std::filesystem::is_empty(std::filesystem::__cxx11::path const&)'

Research

https://forums.centos.org/viewtopic.php?t=75885#p319235

The release notes of GCC 9 mention that 'stdc++fs' is linked automatically, when you use .
Therefore, GCC 8 does not do that.

You have to tell -lstdc++fs to compiler.

[root@ee9a4abcf8fe /]# dnf list gcc
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered with an entitlement server. You can use subscription-manager to register.

Last metadata expiration check: 0:01:07 ago on Wed Nov  9 09:19:03 2022.
Available Packages
gcc.x86_64                                                                          8.5.0-15.el8                                                                          ubi-8-appstream-rpms
[root@ee9a4abcf8fe /]# 

@orensbruli
Copy link
Contributor Author

orensbruli commented Nov 10, 2022

20221110

rmf_visualization_floorplans Build Status

https://build.ros2.org/job/Hbin_rhel_el864__rmf_visualization_floorplans__rhel_8_x86_64__binary/41/console

08:19:19 DEBUG: CMake Error at CMakeLists.txt:25 (add_library):
08:19:19 DEBUG:   Target "floorplan_visualizer" links to target "Eigen3::Eigen" but the
08:19:19 DEBUG:   target was not found.  Perhaps a find_package() call is missing for an
08:19:19 DEBUG:   IMPORTED target, or an ALIAS target is missing?
08:19:19 DEBUG: -- Generating done
  • Looking for the package in https://github.com/ros/rosdistro/blob/master/rosdep/base.yaml#L6554
  • Eigen3 is correctly installed 08:19:16 DEBUG: eigen3-devel-3.3.4-6.el8.noarch 1575283471 6784228 52c4b0561bf717f0d220260fe21674a1 installed
  • Found by cmake 08:19:19 DEBUG: -- Found Eigen3: /usr/include/eigen3 (Required is at least version "2.91.0")

orensbruli added a commit to orensbruli/rmf_task that referenced this issue Nov 10, 2022
@orensbruli orensbruli changed the title REPORT - Package build week 20221010 - 20221014 REPORT - Package build week 20221107 - 20221112 Nov 11, 2022
orensbruli added a commit to open-rmf/rmf_task that referenced this issue Nov 11, 2022
open-rmf/rmf#265 (comment)

Signed-off-by: Esteban Martinena <orensbruli@gmail.com>
@orensbruli
Copy link
Contributor Author

orensbruli commented Nov 11, 2022

20221111

Trying to resolve the previously found problems.

orensbruli added a commit to open-rmf/nlohmann_json_schema_validator_vendor that referenced this issue Nov 11, 2022
orensbruli added a commit to open-rmf/nlohmann_json_schema_validator_vendor that referenced this issue Dec 8, 2022
* Vendoring a version that not depends on json-dev > 3.6

open-rmf/rmf#265 (comment)

* Fixed external project commit to build with json-dev 3.6

* Updated package versions and changelog

* Added patch command and file

* Updated package version and Changelog.

Signed-off-by: Esteban Martinena <orensbruli@gmail.com>
Yadunund added a commit to open-rmf/rmf_task that referenced this issue May 23, 2023
* Fixing need of  stdc++fs to build RPM package

open-rmf/rmf#265 (comment)

Signed-off-by: Esteban Martinena <orensbruli@gmail.com>

* Removed c++fs option for clang

Signed-off-by: Esteban Martinena <orensbruli@gmail.com>

* Review feedback

Signed-off-by: Yadunund <yadunund@openrobotics.org>

* Update rmf_task/CMakeLists.txt

Co-authored-by: Scott K Logan <logans@cottsay.net>

---------

Signed-off-by: Esteban Martinena <orensbruli@gmail.com>
Signed-off-by: Yadunund <yadunund@openrobotics.org>
Co-authored-by: Yadunund <yadunund@openrobotics.org>
Co-authored-by: Yadu <yadunund@gmail.com>
Co-authored-by: Scott K Logan <logans@cottsay.net>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
report Reports about the current state of the packages of rmf
Projects
None yet
Development

No branches or pull requests

1 participant