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

Enable /opt/ros prefix for ROS 2 #1149

Open
wants to merge 3 commits into
base: kirkstone-next
Choose a base branch
from

Conversation

jiaxshi
Copy link
Contributor

@jiaxshi jiaxshi commented May 17, 2024

The implementation is based on cmake and python compilation configurations.
#1079

Since ROS 2 binaries are installed to /opt, the copy operations
are no longer needed.

Signed-off-by: Jiaxing Shi <[email protected]>
@robwoolley robwoolley changed the title Enable /opt/ros prefix for ROS 2 {humble} Enable /opt/ros prefix for ROS 2 May 21, 2024
@robwoolley
Copy link
Collaborator

@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.

@robwoolley robwoolley self-assigned this May 21, 2024
@jiaxshi
Copy link
Contributor Author

jiaxshi commented May 22, 2024

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 ros_distro_{xxx}.bbclass is better.

@robwoolley
Copy link
Collaborator

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
Copy link
Contributor Author

jiaxshi commented Jun 6, 2024

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 robwoolley changed the title {humble} Enable /opt/ros prefix for ROS 2 Enable /opt/ros prefix for ROS 2 Jun 6, 2024
@robwoolley
Copy link
Collaborator

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
Copy link

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
Copy link
Contributor Author

jiaxshi commented Aug 22, 2024

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
Copy link

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
Copy link
Contributor Author

jiaxshi commented Aug 23, 2024

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
Copy link

Hi @jiaxshi

I checked your solution work properly now.

Thanks.

BR,
Mark

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants