CMake not found when using rosgenmsg on Windows
显示 更早的评论
I ran into the similar problems desribed here with the difference of me having Matlab 2021b which is installed on Windows 10. I, too, use Ros1 (Noetic, running over WSL) and tried to run rosgenmsg with the path to the messages which results in the following error:
Error using ros.internal.utilities.getCMakeBinaryPath (line 24)
Could not find CMake in your system. Please install CMake version 3.15.5 or higher and rerun the command.
I tried several different things:
- Different versions of Cmake (3.15.5, 3.22), I added them to path while installing, added them to path via Matlab.
- A different PC with same versions of software, but a more up to date windows version, same Problem.
- Different Installation folders (C:/..., C/Programms/..., D/... and so on) With blank spaces in the path and without etc.
- Most of the solutions in the post linked above sadly dont apply to my version of the problem and the others didnt work for me.
The following command (in Matlab) give the following results back:
- "!cmake --version" gives me:
"cmake version 3.15.5
CMake suite maintained and supported by Kitware (kitware.com/cmake)."
In a windows terminal "cmake --version gives the same result as above, so verything seems to be normal
9 个评论
Jagadeesh Konakalla
2021-11-8
Hi Albert,
Sorry for the inconvenience.
Can you please let me know the output of the following command on your MATLAB to help you further ?
[status, result] = system('cmake --version')
Thanks,
Jagadeesh K.
Albert Thelemann
2021-11-8
Jagadeesh Konakalla
2021-11-8
Hi Albert,
The actual fix for this issue will be addressed in the next update release of R2021b. The update will be available soon.
For now, on your MATLAB installation, Can you replace code in the line number 22 of the file ros.internal.utilities.getCMakeBinaryPath with the following code. Let me know if this helps.
if ispc
[status, result] = system('cmake --version')
else
[status, result] = system('env LD_LIBRARY_PATH= cmake --version');
end
Albert Thelemann
2021-11-8
Jagadeesh Konakalla
2021-11-8
Yes Albert. You need to install VS 2017 for custom message generation from ROS toolbox. Please follow the default instructions of Visual studios and let me know if you run into issues with rosgenmsg.
Thanks,
Jagadeesh K.
Albert Thelemann
2021-11-8
Jagadeesh Konakalla
2021-11-8
Hi Albert,
From the CMAKE error log, it looks issue with your Microsoft Visual Studio 2017 installation. The CMAKe is not able to compile simple C++ test program with Visual sudio compiler.
It would be good to compile simple hello world program in VS 2017 IDE to make sure that your installation is correct.
Please contact MathWorks Technical Support for further assistance.
Thanks,
Jagadeesh K.
Stefan Kubica
2022-3-6
编辑:Stefan Kubica
2022-3-6
Good Morning,
I have the same problem on a Windows 10 machine and Matlab 2021b. I also tried different versions of CMake but no difference. Perhaps, there was a solution on this issue? I already gave a message to the Matlab Support but wanted to give it a try here.
Thanks and best wishes
Stefan
Albert Thelemann
2022-3-7
回答(1 个)
Jagadeesh Konakalla
2023-4-12
0 个投票
The fix for this issue is addressed in the update release of R2021b. Please use the latest update release of R2021b
类别
在 帮助中心 和 File Exchange 中查找有关 Code Generation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!