jetson-containers icon indicating copy to clipboard operation
jetson-containers copied to clipboard

Install moveit within Dockerfile.ros.noetic

Open eliabruni opened this issue 4 years ago • 5 comments

Hi!

I am trying to build Moveit! from source as explained here within Dockerfile.ros.noetic, but I am having some issues.

Here is what I am trying in the Dockerfile, right after line 54:

# Install Moveit dependencies
RUN apt-get update && \
    apt-get install --no-install-recommends --no-install-suggests --yes \
    clang-format-10 \
    && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*

# Install Moveit
WORKDIR /
RUN chmod +x ${ROS_ROOT}/setup.bash
RUN /bin/bash -c  '${ROS_ROOT}/setup.bash'

RUN mkdir moveit_catkin_ws && \
    cd moveit_catkin_ws && \
    wstool init src && \
    wstool merge -t src https://raw.githubusercontent.com/ros-planning/moveit/master/moveit.rosinstall && \
    wstool update -t src && \
    # ISSUE HERE 
    rosdep install -y --from-paths src --ignore-src --rosdistro ${ROS_DISTRO} --os=ubuntu:bionic

RUN catkin config --extend /opt/ros/${ROS_DISTRO} --cmake-args -DCMAKE_BUILD_TYPE=Release

And this is what I am getting:

ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
moveit_ros_move_group: No definition of [rostest] for OS version [bionic]
moveit_chomp_optimizer_adapter: No definition of [pluginlib] for OS version [bionic]
moveit_resources_prbt_pg70_support: No definition of [xacro] for OS version [bionic]
moveit_planners: No definition of [catkin] for OS version [bionic]
moveit: No definition of [catkin] for OS version [bionic]
moveit_ros_occupancy_map_monitor: No definition of [rosunit] for OS version [bionic]
moveit_ros_planning: No definition of [tf2_ros] for OS version [bionic]
moveit_runtime: No definition of [catkin] for OS version [bionic]
moveit_ros_visualization: No definition of [rostest] for OS version [bionic]
moveit_resources_pr2_description: No definition of [catkin] for OS version [bionic]
moveit_ros_control_interface: No definition of [trajectory_msgs] for OS version [bionic]
moveit_ros_manipulation: No definition of [pluginlib] for OS version [bionic]
moveit_ros_perception: No definition of [rosunit] for OS version [bionic]
moveit_ros_warehouse: No definition of [tf2_ros] for OS version [bionic]
rviz_visual_tools: No definition of [rosunit] for OS version [bionic]
moveit_ros: No definition of [catkin] for OS version [bionic]
moveit_resources_prbt_moveit_config: No definition of [rviz] for OS version [bionic]
moveit_tutorials: No definition of [rosunit] for OS version [bionic]
pilz_industrial_motion_planner: No definition of [code_coverage] for OS version [bionic]
moveit_planners_chomp: No definition of [rostest] for OS version [bionic]
moveit_resources_panda_moveit_config: No definition of [topic_tools] for OS version [bionic]
moveit_fake_controller_manager: No definition of [roscpp] for OS version [bionic]
moveit_simple_controller_manager: No definition of [actionlib] for OS version [bionic]
moveit_msgs: No definition of [std_msgs] for OS version [bionic]
moveit_ros_robot_interaction: No definition of [rosunit] for OS version [bionic]
moveit_resources_prbt_support: No definition of [code_coverage] for OS version [bionic]
moveit_commander: No definition of [rostest] for OS version [bionic]
moveit_resources_prbt_ikfast_manipulator_plugin: No definition of [tf2_kdl] for OS version [bionic]
moveit_resources_fanuc_description: No definition of [catkin] for OS version [bionic]
pilz_industrial_motion_planner_testutils: No definition of [catkin] for OS version [bionic]
moveit_core: No definition of [rosunit] for OS version [bionic]
moveit_servo: No definition of [rostest] for OS version [bionic]
moveit_ros_planning_interface: No definition of [eigen_conversions] for OS version [bionic]
moveit_ros_benchmarks: No definition of [pluginlib] for OS version [bionic]
moveit_kinematics: No definition of [xmlrpcpp] for OS version [bionic]
moveit_plugins: No definition of [catkin] for OS version [bionic]
moveit_resources: No definition of [robot_state_publisher] for OS version [bionic]
moveit_visual_tools: No definition of [cmake_modules] for OS version [bionic]
panda_moveit_config: No definition of [topic_tools] for OS version [bionic]
moveit_resources_panda_description: No definition of [catkin] for OS version [bionic]
chomp_motion_planner: No definition of [catkin] for OS version [bionic]
geometric_shapes: No definition of [rosunit] for OS version [bionic]
moveit_setup_assistant: No definition of [rosunit] for OS version [bionic]
moveit_planners_ompl: No definition of [eigen_conversions] for OS version [bionic]
moveit_resources_fanuc_moveit_config: No definition of [xacro] for OS version [bionic]
The command '/bin/sh -c mkdir moveit_catkin_ws &&     cd moveit_catkin_ws &&     wstool init src &&     wstool merge -t src https://raw.githubusercontent.com/ros-planning/moveit/master/moveit.rosinstall &&     wstool update -t src &&     rosdep install -y --from-paths src --ignore-src --rosdistro ${ROS_DISTRO} --os=ubuntu:bionic' returned a non-zero code: 1

Any ideas how to solve it?

Thanks!

eliabruni avatar Feb 10 '21 17:02 eliabruni

Hi, I have the same issue as described here. I tried building within a container and outside of the container. Is it that moveit can not be built from source on jetson? Even though the noetic desktop can ? Are there any more ideas om how to resolve this?

AWilson10 avatar Nov 21 '21 19:11 AWilson10

Thanks for that - will give it a try - appreciate it.

Kind Regards,

Anthony

T: +44 (0)1224 929010

M: +44(0)7855 264204

Unit 14 Hareness Trade Park, Hareness Road, Altens, AB12 3LE

[image: DNV GL Logo & UKAS 0013]

www.qltech.net

Quantum Leap Technologies (QL Tech) Limited is a limited company registered in England. Company Registered No 8921426. Registered office: Seaways, Restronguet Point, Feock, Truro, Cornwall, TR3 6RL. Private and confidential: This e-mail transmission is strictly confidential and intended solely for the person or organisation to whom it is addressed. If you are not the intended recipient, you must not copy, disclose, distribute or take any action in reliance on it. If you have received this e-mail in error, please notify us and then delete it as soon as possible. The sender of this email, or QL Tech Ltd., is not responsible for any changes made to it or any attachments after transmission. It is the responsibility of the recipient to ensure that the onward transmission, opening or use of this message and any attachments will not adversely affect their systems or data. Please carry out virus and other such checks as you consider appropriate.

On Sun, Nov 21, 2021 at 8:39 PM Elia Bruni @.***> wrote:

Here is how I solved it:

RUN apt-get update &&
apt-get install --no-install-recommends --no-install-suggests --yes
build-essential
cmake
libbullet-dev
python3-colcon-common-extensions
python3-flake8
python3-pip
python3-pytest-cov
python3-rosdep
python3-setuptools
python3-vcstool
wget
clang-format-10
&&
apt-get clean &&
rm -rf /var/lib/apt/lists/*

install some pip packages needed for testing

RUN python3 -m pip install -U
argcomplete
flake8-blind-except
flake8-builtins
flake8-class-newline
flake8-comprehensions
flake8-deprecated
flake8-docstrings
flake8-import-order
flake8-quotes
pytest-repeat
pytest-rerunfailures
pytest

create workspace

ENV COLCON_WS=/ws_moveit2 RUN mkdir -p $COLCON_WS/src WORKDIR $COLCON_WS/src

get repo

RUN git clone https://github.com/ros-planning/moveit2.git RUN git clone https://github.com/ros-planning/moveit2_tutorials.git RUN vcs import < moveit2/moveit2.repos RUN vcs import < moveit2_tutorials/moveit2_tutorials.repos

install

RUN apt-get update &&
rosdep install -r --from-paths $COLCON_WS/src --ignore-src --rosdistro foxy -y

WORKDIR $COLCON_WS

Set the gcc default back to 9.3

RUN update-alternatives --remove-all gcc &&
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 800 --slave /usr/bin/g++ g++ /usr/bin/g++-9

build moveit2

moveit2 requires access to the installation of ROS2, hence we need this hacky implementation in which we source

the installation

RUN /bin/bash -c "source $ROS_ROOT/setup.bash ; colcon build --event-handlers desktop_notification- status- --cmake-args -DCMAKE_BUILD_TYPE=Release"

source workspace

RUN echo "source $COLCON_WS/install/setup.bash" >> /root/.bashrc

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/dusty-nv/jetson-containers/issues/46#issuecomment-974892169, or unsubscribe https://github.com/notifications/unsubscribe-auth/AJT6MLSNLQOBL5FQ7M74DRLUNFKJRANCNFSM4XNLPZUA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

AWilson10 avatar Nov 22 '21 09:11 AWilson10

Hi Just realised this is for ros2 foxy. We are wanting noetic. Thanks

On Sun, 21 Nov 2021 at 20:39, Elia Bruni @.***> wrote:

Here is how I solved it:

RUN apt-get update &&
apt-get install --no-install-recommends --no-install-suggests --yes
build-essential
cmake
libbullet-dev
python3-colcon-common-extensions
python3-flake8
python3-pip
python3-pytest-cov
python3-rosdep
python3-setuptools
python3-vcstool
wget
clang-format-10
&&
apt-get clean &&
rm -rf /var/lib/apt/lists/*

install some pip packages needed for testing

RUN python3 -m pip install -U
argcomplete
flake8-blind-except
flake8-builtins
flake8-class-newline
flake8-comprehensions
flake8-deprecated
flake8-docstrings
flake8-import-order
flake8-quotes
pytest-repeat
pytest-rerunfailures
pytest

create workspace

ENV COLCON_WS=/ws_moveit2 RUN mkdir -p $COLCON_WS/src WORKDIR $COLCON_WS/src

get repo

RUN git clone https://github.com/ros-planning/moveit2.git RUN git clone https://github.com/ros-planning/moveit2_tutorials.git RUN vcs import < moveit2/moveit2.repos RUN vcs import < moveit2_tutorials/moveit2_tutorials.repos

install

RUN apt-get update &&
rosdep install -r --from-paths $COLCON_WS/src --ignore-src --rosdistro foxy -y

WORKDIR $COLCON_WS

Set the gcc default back to 9.3

RUN update-alternatives --remove-all gcc &&
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 800 --slave /usr/bin/g++ g++ /usr/bin/g++-9

build moveit2

moveit2 requires access to the installation of ROS2, hence we need this hacky implementation in which we source

the installation

RUN /bin/bash -c "source $ROS_ROOT/setup.bash ; colcon build --event-handlers desktop_notification- status- --cmake-args -DCMAKE_BUILD_TYPE=Release"

source workspace

RUN echo "source $COLCON_WS/install/setup.bash" >> /root/.bashrc

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/dusty-nv/jetson-containers/issues/46#issuecomment-974892169, or unsubscribe https://github.com/notifications/unsubscribe-auth/AJT6MLSNLQOBL5FQ7M74DRLUNFKJRANCNFSM4XNLPZUA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

AWilson10 avatar Nov 22 '21 12:11 AWilson10

Hey, indeed that's why I removed the comment. I am not sure we managed to make Noetic work in the end.

eliabruni avatar Nov 22 '21 14:11 eliabruni

Ok, thanks.

On Mon, 22 Nov 2021 at 14:51, Elia Bruni @.***> wrote:

Hey, indeed that's why I removed the comment. I am not sure we managed to make Noetic work in the end.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/dusty-nv/jetson-containers/issues/46#issuecomment-975606343, or unsubscribe https://github.com/notifications/unsubscribe-auth/AJT6MLXH6HLNCUHTM4KXEETUNJKHBANCNFSM4XNLPZUA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

AWilson10 avatar Nov 22 '21 15:11 AWilson10