Ask Your Question
0

ROS2 compiled node release executable crashes when launched from a different computer

asked 2020-12-02 03:51:24 -0500

f.stojanovic gravatar image

updated 2020-12-02 05:16:33 -0500

  • OS : Windows 10 x64 PRO
    • ROS 2 distribution : Foxy Fitzroy (precompiled)

Issue :

  • On the PC my node is developed on, the .EXE from build/Release runs perfectly. I don't need to source ROS2, just launching the node works.
  • On the second PC I want to deploy the node, I have the ros2 Foxy binaries set up at the same exact location, and Path set up properly. However, when I run the node in the same way on this PC, the node crashes instantly, shutting down as soon as it is launched.

I can confirm that the shared ros2 libraries (rclcpp.dll, rcl.dll and such) are found at the Path, as when I remove ros2-foxy/bin from it, I get this error message.


Note : sourcing ROS2 is not an option for me. It must work without this step. Edit : even if I source ROS2 on my second PC, it still crashes.

Therefore the question is : how to make it run on the second PC as it runs on the first?

Thank you very much, any help is greatly appreciated.

edit retag flag offensive close merge delete

Comments

I get this error message.

I assume you intended to post a screenshot.

Seeing as this is Windows, that's probably the only/best way to show the crash dialog, so I've given you sufficient karma to be able to attach images.

For console text, please do not post screenshots. Instead, copy-paste the text into your question.

gvdhoorn gravatar image gvdhoorn  ( 2020-12-02 04:56:06 -0500 )edit

@gvdhoorn, thank you for your answer. Yes, that error message is not important as it is controlled, only arises when I intentionally hide my ros2 distribution.

The way my node crashes when deploying on a target (second PC) is not verbose, the console just shuts down the same instant.

f.stojanovic gravatar image f.stojanovic  ( 2020-12-02 05:15:15 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
0

answered 2020-12-02 08:39:16 -0500

f.stojanovic gravatar image

I found the solution : the target (second) PC only had the binary distribution installed.

This is not sufficient to run ROSv2 nodes.

The whole process must be followed, especially installing VS dependencies, as well as cmake and python packages.

P.S. : don't bother with RQT if you have the same issue as described above (it is not well-ported to Windows anyway).

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

2 followers

Stats

Asked: 2020-12-02 03:51:24 -0500

Seen: 258 times

Last updated: Dec 02 '20