Setup ROS custom messages, problems with compiling

22 views (last 30 days)
Dear all,
I am struggling with an issue for a while now and would be really thankful for some help. I am trying to implement my cumstomized ROS messages into Matlab. As I am trying to import the ROS messages I run the following code:
mex -setup cpp
folderpath = 'C:\Users\sampleuser\Documents\MATLAB\R2021b\custom_msgs\tristan_thesis_hil';
Running this code gives me the following output:
Error using ros.internal.ROSProjectBuilder (line 419)
Current compiler MinGW64 Compiler (C++) is not supported for ROS build. To choose a compiler, run 'mex -setup cpp'.
Error in ros.internal.CatkinBuilder (line 25)
Error in rosgenmsg (line 287)
builder = ros.internal.CatkinBuilder(genDir, pkgInfos{iPkg});
Could anybody help me with this issue?
Thank you all!

Answers (1)

Cam Salzberger
Cam Salzberger on 3 Feb 2022
Edited: Cam Salzberger on 3 Feb 2022
Hello Tristan,
ROS custom message compilation requires Visual Studio 2017 or 2019. The MinGW C++ compiler will not work for creating the libraries necessary to use ROS. Run "mex -setup cpp" and use the prompts to select Visual Studio (once installed).
See here for general information on system requirements to use various ROS Toolbox functionality.
Tristan Sinnecker
Tristan Sinnecker on 3 Feb 2022
Hi Cam,
Thank you very much for your quick response. I installed MinGW because the error output suggested me to do so. Anyway, if it should work with VS 2017 or 2019 I will install right now. Do I have to consider anything to implement Visual Studio into Matlab or can I just simply consider the following post?
Thank you very much for your help!
Cam Salzberger
Cam Salzberger on 7 Feb 2022
That post should be fine. There's nothing particular that ROS Toolbox needs out of Visual Studio beyond that which MATLAB already requires for codegen.

Sign in to comment.


Find more on Specialized Messages in Help Center and File Exchange




Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!