Skip to content

install/setup.bash in overlay workspace does not source /opt/ros/<distro> from Debian packages #653

@Karsten1987

Description

@Karsten1987

Bug report

When working with the binary installation and a custom overlay workspace on top of it, sourcing the setup.bash of the overlay workspace does not recursively source the binary installation.

Required Info:

  • Operating System:
    • Ubuntu 18.04
  • Installation type:
    • binaries with custom overlay workspace
  • Version or commit hash:
    • latest binaries (crystal)

Steps to reproduce issue

Steps are inspired from this Dockerfile

sudo apt-get install ros-crystal-desktop  #install binaries
mkdir -p ~/ros2_overlay/src
cd $_
git clone <repo name>
cd -
source /opt/ros/crystal/setup.bash
colcon build

in a fresh terminal now:

cd ~/ros2_overlay
source install/setup.bash
ros2

Expected behavior

ros2 entry point found

usage: ros2 [-h] Call `ros2 <command> -h` for more detailed usage. ...

ros2 is an extensible command-line tool for ROS 2.

optional arguments:
  -h, --help            show this help message and exit

Commands:
  daemon  Various daemon related sub-commands

  Call `ros2 <command> -h` for more detailed usage.

Actual behavior

ros2 is not found, meaning the binaries workspace was not recursively sourced when sourcing the workspace install setup.bash

bash: ros2: command not found

Additional information

When sourcing the binary workspace /opt/ros/crystal/setup.bash beforehand (manually) followed by sourcing the workspace it works fine.

Also when compiling everything from source, the chaining of workspaces works as expected. I believe something during the packaging process might prevent this functionality.

Metadata

Metadata

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions