ros / meta-ros

OpenEmbedded Layers for ROS 1 and ROS 2
MIT License
382 stars 251 forks source link

Enable /opt/ros prefix for ROS 2 #1149

Open jiaxshi opened 4 months ago

jiaxshi commented 4 months ago

The implementation is based on cmake and python compilation configurations.

1079

robwoolley commented 4 months ago

@jiaxshi Thank you very much for submitting this. I have done a quick visual review and everything looks pretty complete and I was impressed by your attention to the details on what would be affected.

The only question that I had was in ros_ament_python.bbclass in regards to PYTHON_SITEPACKAGES_DIR. I tried to add a comment on that line directly in the review.

I will try running some build tests to test it out.

jiaxshi commented 4 months ago

Hi Rob, Thanks for review. I see you add {humble} prefix to the title. I realize that the patches have impact on all ROS 2 distros. I want to use a DISTRO_FEATURE or macro to enable/disable /opt/ros prefix. It makes things complex. Maybe to set ros_prefix=xx in each rosdistro{xxx}.bbclass is better.

robwoolley commented 3 months ago

Thanks again for contributing this! I am genuinely excited about people being able to follow the instructions in the documentation and tutorials exactly with a good chance of success.

Based on our conversation, I decided to first apply it on rolling and jazzy. I intend to do a hard cutover to using /opt/ros/ as the prefix as it shouldn't affect any existing work. I was able to successfully go through the basic image sanity test instructions on the wiki. This was using scarthgap+jazzy on a Raspberry Pi 4.

Next I intend to use it as I complete the GUI work for kirkstone+humble. That should help test it sufficiently to ensure that it can be safely merged into kirkstone+humble. From there I will try to push it across all the supported combinations.

jiaxshi commented 3 months ago

I truly appreciate your gratitude and am glad to have been of assistance. Please feel free to reach out if there’s anything more I can help with.

robwoolley commented 3 months ago

I have merged the changes into the master and scarthgap branches. I still have kirkstone (LTS) left to do once I have done some more extensive testing.

mark-bchoi commented 1 month ago

Hi

I tried to build octomap with scarthgap branch and got error in installing packages.

| -- Set non-toolchain portion of runtime path of "/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/compare_octrees" to "/opt/ros/humble/lib"
| open: No such file or directory
| elf_open: Invalid argument
| WARNING: exit code 1 from a shell command.
ERROR: Task (/home/bchoi/nvidia-yocto-bsp/layers/meta-ros/meta-ros2-humble/generated-recipes/octomap/octomap_1.9.8-1.bb:do_install) failed with exit code '1'
NOTE: Tasks Summary: Attempted 1592 tasks of which 1587 didn't need to be rerun and 1 failed.

Summary: 1 task failed:
  /home/bchoi/nvidia-yocto-bsp/layers/meta-ros/meta-ros2-humble/generated-recipes/octomap/octomap_1.9.8-1.bb:do_install
Summary: There was 1 ERROR message, returning a non-zero exit code.

When I had tried to build it with kirkstone branch, there is no issue for me.

I investigated this issue and found a clue. I think this erros was from changing CMAKE_INSTALL_PREFIX to ros_prefix. octomap had installed to previous CMAKE_INSTALL_PREFIX.

I think that some recipes using following conditions at the same time would be affected.

inherit ros_distro_humble
inherit ros_superflore_generated

and

ROS_BUILD_TYPE = "cmake"
inherit ros_${ROS_BUILD_TYPE}

I could avoid this error with EXTRA_OECMAKE += "-DCMAKE_INSTALL_PREFIX=${prefix}"

BR, Mark

jiaxshi commented 1 month ago

Hi @mark-bchoi Thanks for your feedback. A quick check, i think the error is due to

33 do_install:append() {
 34     chrpath --delete ${D}${bindir}/* ${D}${libdir}/*${SOLIBS}
 35 }

in meta-ros2-humble/recipes-bbappends/octomap/octomap_1.9.8-1.bbappend Could you please delete the code and have a try?

mark-bchoi commented 1 month ago

octomap

Hi @jiaxshi

I tested it as your recommendation and got the same error I gone through. I add entire error log here.

Sstate summary: Wanted 13 Local 3 Mirrors 0 Missed 10 Current 515 (23% match, 98% complete)####################################################################################################################################################################################################################################################                                    | ETA:  0:00:00
Initialising tasks: 100% |#########################################################################################################################################################################################################################################################################################################################################################| Time: 0:00:01
NOTE: Executing Tasks
ERROR: octomap-1.9.8-1-r0 do_install: ExecutionError('/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/temp/run.do_install.1260', 1, None, None)
ERROR: Logfile of failure stored in: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/temp/log.do_install.1260
Log data follows:
| DEBUG: Executing python function extend_recipe_sysroot
| NOTE: Direct dependencies are ['/home/bchoi/nvidia-yocto-bsp/layers/openembedded-core/meta/recipes-core/glibc/glibc_2.39.bb:do_populate_sysroot', '/home/bchoi/nvidia-yocto-bsp/layers/openembedded-core/meta/recipes-devtools/cmake/cmake-native_3.28.3.bb:do_populate_sysroot', '/home/bchoi/nvidia-yocto-bsp/layers/openembedded-core/meta/recipes-devtools/gcc/gcc-cross_13.3.bb:do_populate_sysroot', '/home/bchoi/nvidia-yocto-bsp/layers/openembedded-core/meta/recipes-devtools/gcc/gcc-runtime_13.3.bb:do_populate_sysroot', '/home/bchoi/nvidia-yocto-bsp/layers/openembedded-core/meta/recipes-devtools/quilt/quilt-native_0.67.bb:do_populate_sysroot', 'virtual:native:/home/bchoi/nvidia-yocto-bsp/layers/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.9.3.bb:do_populate_sysroot', 'virtual:native:/home/bchoi/nvidia-yocto-bsp/layers/openembedded-core/meta/recipes-devtools/chrpath/chrpath_0.16.bb:do_populate_sysroot', 'virtual:native:/home/bchoi/nvidia-yocto-bsp/layers/openembedded-core/meta/recipes-devtools/ninja/ninja_1.11.1.bb:do_populate_sysroot', 'virtual:native:/home/bchoi/nvidia-yocto-bsp/layers/openembedded-core/meta/recipes-devtools/patch/patch_2.7.6.bb:do_populate_sysroot', 'virtual:native:/home/bchoi/nvidia-yocto-bsp/layers/openembedded-core/meta/recipes-devtools/pseudo/pseudo_git.bb:do_populate_sysroot']
| NOTE: Installed into sysroot: []
| NOTE: Skipping as already exists in sysroot: ['gettext-minimal-native', 'glibc', 'binutils-cross-aarch64', 'cmake-native', 'gcc-cross-aarch64', 'gcc-runtime', 'libgcc', 'libtool-native', 'm4-native', 'quilt-native', 'texinfo-dummy-native', 'linux-libc-headers', 'doxygen-native', 'graphviz-native', 'mpfr-native', 'openssl-native', 'expat-native', 'gettext-native', 'glib-2.0-native', 'libxml2-native', 'ncurses-native', 'util-linux-libuuid-native', 'util-linux-native', 'zlib-native', 'chrpath-native', 'flex-native', 'gnu-config-native', 'libedit-native', 'make-native', 'ninja-native', 'patch-native', 'perl-native', 'pseudo-native', 'python3-build-native', 'python3-docutils-native', 'python3-flit-core-native', 'python3-installer-native', 'python3-packaging-native', 'python3-pyproject-hooks-native', 'python3-setuptools-native', 'python3-wheel-native', 'python3-native', 'cargo-native', 'rust-llvm-native', 'rust-native', 'vala-native', 'bzip2-native', 'groff-native', 'libnsl2-native', 'libtirpc-native', 'unzip-native', 'xz-native', 'zstd-native', 'gdk-pixbuf-native', 'gobject-introspection-native', 'librsvg-native', 'cairo-native', 'fontconfig-native', 'freetype-native', 'harfbuzz-native', 'libjpeg-turbo-native', 'pango-native', 'liberation-fonts-native', 'libpthread-stubs-native', 'libx11-native', 'libxau-native', 'libxcb-native', 'libxdmcp-native', 'libxext-native', 'libxft-native', 'libxrender-native', 'pixman-native', 'xtrans-native', 'xcb-proto-native', 'xorgproto-native', 'util-macros-native', 'libpng-native', 'attr-native', 'ca-certificates-native', 'curl-native', 'fribidi-native', 'gdbm-native', 'gmp-native', 'icu-native', 'itstool-native', 'libcap-ng-native', 'libffi-native', 'libmpc-native', 'libpcre2-native', 'libssh2-native', 're2c-native', 'shared-mime-info-native', 'sqlite3-native']
| DEBUG: Python function extend_recipe_sysroot finished
| DEBUG: Executing shell function do_install
| NOTE: DESTDIR=/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image VERBOSE=1 cmake --install /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/build
| -- Install configuration: "Release"
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/AbstractOcTree.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/AbstractOccupancyOcTree.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/ColorOcTree.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/CountingOcTree.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/MCTables.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/MapCollection.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/MapCollection.hxx
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/MapNode.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/MapNode.hxx
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OcTree.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OcTreeBase.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OcTreeBaseImpl.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OcTreeBaseImpl.hxx
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OcTreeDataNode.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OcTreeDataNode.hxx
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OcTreeIterator.hxx
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OcTreeKey.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OcTreeNode.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OcTreeStamped.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OccupancyOcTreeBase.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/OccupancyOcTreeBase.hxx
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/Pointcloud.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/ScanGraph.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/octomap.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/octomap_deprecated.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/octomap_timing.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/octomap_types.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/octomap_utils.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/math/Pose6D.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/math/Quaternion.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/math/Utils.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/include/octomap/math/Vector3.h
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/share/octomap/package.xml
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/share/ament_index/resource_index/packages/octomap
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/share/octomap/octomap-config.cmake
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/share/octomap/octomap-config-version.cmake
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/lib/pkgconfig/octomap.pc
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/lib/liboctomath.so.1.9.8
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/lib/liboctomath.so.1.9
| -- Set non-toolchain portion of runtime path of "/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/lib/liboctomath.so.1.9.8" to "/opt/ros/humble/lib"
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/lib/liboctomath.so
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/lib/liboctomath.a
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/lib/liboctomap.so.1.9.8
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/lib/liboctomap.so.1.9
| -- Set non-toolchain portion of runtime path of "/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/lib/liboctomap.so.1.9.8" to "/opt/ros/humble/lib"
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/lib/liboctomap.so
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/lib/liboctomap.a
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/share/octomap/octomap-targets.cmake
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/share/octomap/octomap-targets-release.cmake
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/graph2tree
| -- Set non-toolchain portion of runtime path of "/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/graph2tree" to "/opt/ros/humble/lib"
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/log2graph
| -- Set non-toolchain portion of runtime path of "/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/log2graph" to "/opt/ros/humble/lib"
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/binvox2bt
| -- Set non-toolchain portion of runtime path of "/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/binvox2bt" to "/opt/ros/humble/lib"
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/bt2vrml
| -- Set non-toolchain portion of runtime path of "/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/bt2vrml" to "/opt/ros/humble/lib"
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/edit_octree
| -- Set non-toolchain portion of runtime path of "/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/edit_octree" to "/opt/ros/humble/lib"
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/convert_octree
| -- Set non-toolchain portion of runtime path of "/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/convert_octree" to "/opt/ros/humble/lib"
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/eval_octree_accuracy
| -- Set non-toolchain portion of runtime path of "/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/eval_octree_accuracy" to "/opt/ros/humble/lib"
| -- Installing: /home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/compare_octrees
| -- Set non-toolchain portion of runtime path of "/home/bchoi/nvidia-yocto-bsp/bchoi-build/tmp/work/armv8a-oe4t-linux/octomap/1.9.8-1/image/opt/ros/humble/bin/compare_octrees" to "/opt/ros/humble/lib"
| open: No such file or directory
| elf_open: Invalid argument
| WARNING: exit code 1 from a shell command.
ERROR: Task (/home/bchoi/nvidia-yocto-bsp/layers/meta-ros/meta-ros2-humble/generated-recipes/octomap/octomap_1.9.8-1.bb:do_install) failed with exit code '1'
NOTE: Tasks Summary: Attempted 1592 tasks of which 1580 didn't need to be rerun and 1 failed.

Summary: 1 task failed:
  /home/bchoi/nvidia-yocto-bsp/layers/meta-ros/meta-ros2-humble/generated-recipes/octomap/octomap_1.9.8-1.bb:do_install
Summary: There was 1 ERROR message, returning a non-zero exit code.
bchoi@ubuntu-22:~/nvidia-yocto-bsp/bchoi-build$
jiaxshi commented 1 month ago

Hi @mark-bchoi I reproduce the issue on scarthgap/jazzy. And after remove the lines i shared before ,build passed.

index 0d0542fae..bb8253c57 100644
--- a/meta-ros2-jazzy/recipes-bbappends/octomap/octomap_1.10.0-4.bbappend
+++ b/meta-ros2-jazzy/recipes-bbappends/octomap/octomap_1.10.0-4.bbappend
@@ -30,9 +30,9 @@ inherit ros_insane_dev_so
 # octomap: /usr/bin/edit_octree contains probably-redundant RPATH /usr/lib
 # octomap: /usr/bin/eval_octree_accuracy contains probably-redundant RPATH /usr/lib [useless-rpaths]
 DEPENDS:append:class-target = " chrpath-replacement-native"
-do_install:append() {
-    chrpath --delete ${D}${bindir}/* ${D}${libdir}/*${SOLIBS}
-}
+#do_install:append() {
+#    chrpath --delete ${D}${bindir}/* ${D}${libdir}/*${SOLIBS}
+#}
| -- Set non-toolchain portion of runtime path of "/local/mnt/workspace/jiaxshi/projects/ros_poky/rpi-build/tmp/work/cortexa72-poky-linux/octomap/1.10.0-4/image/opt/ros/jazzy/bin/compare_octrees" to
"/opt/ros/jazzy/lib"
| open: No such file or directory
| elf_open: Invalid argument
| WARNING: exit code 1 from a shell command.
ERROR: Task (/local/mnt/workspace/jiaxshi/projects/ros_poky/meta-ros/meta-ros2-jazzy/generated-recipes/octomap/octomap_1.10.0-4.bb:do_install) failed with exit code '1'
mark-bchoi commented 1 month ago

Hi @jiaxshi

I checked your solution work properly now.

Thanks.

BR, Mark