ament / uncrustify_vendor

CMake shim over the uncrustify library: https://github.com/uncrustify/uncrustify
Apache License 2.0
0 stars 9 forks source link

[Windows] No CMAKE_CXX_COMPILER found when building #26

Closed aprotyas closed 7 months ago

aprotyas commented 2 years ago

I'm building the ROS 2 packages from source following the Windows source tutorial, but I'm blocked by a failure on uncrustify_vendor package. CMake reports that C/CXX compilers cannot be found. Following is the traceback I see:

CMake error ```powershell C:\dev\ros2_rolling>colcon build --merge-install --packages-select uncrustify_vendor --event-handlers console_direct+ Starting >>> uncrustify_vendor -- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19044. -- Found ament_cmake: 1.2.0 (C:/dev/ros2_rolling/install/share/ament_cmake/cmake) -- Configuring done -- Generating done -- Build files have been written to: C:/dev/ros2_rolling/build/uncrustify_vendor Microsoft (R) Build Engine version 16.11.2+f32259642 for .NET Framework Copyright (C) Microsoft Corporation. All rights reserved. Checking Build System Performing configure step for 'uncrustify-45b836cff040594994d364ad6fd3f04adc890a26' -- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19044. -- The C compiler identification is unknown -- The CXX compiler identification is unknown CMake Error at CMakeLists.txt:3 (project): No CMAKE_C_COMPILER could be found. CMake Error at CMakeLists.txt:3 (project): No CMAKE_CXX_COMPILER could be found. -- Configuring incomplete, errors occurred! See also "C:/dev/ros2_rolling/build/uncrustify_vendor/uncrustify-45b836cff040594994d364ad6fd3f04adc890a26-prefix/src/uncrustify-45b836cff040594994d364ad6fd3f04adc890a26-build/CMakeFiles/CMakeOutput.log". See also "C:/dev/ros2_rolling/build/uncrustify_vendor/uncrustify-45b836cff040594994d364ad6fd3f04adc890a26-prefix/src/uncrustify-45b836cff040594994d364ad6fd3f04adc890a26-build/CMakeFiles/CMakeError.log". C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(241,5): error MSB8066: Custom build for 'C:\dev\ros2_rolling\build\uncrustify_vendor\CMakeFiles\d177f57d11cdf441cb98984155862ddc\uncrustify-45b836cff040594994d364ad6fd3f04adc890a26-configure.rule;C:\dev\ros2_rolling\build\uncrustify_vendor\CMakeFiles\d177f57d11cdf441cb98984155862ddc\uncrustify-45b836cff040594994d364ad6fd3f04adc890a26-build.rule;C:\dev\ros2_rolling\build\uncrustify_vendor\CMakeFiles\d177f57d11cdf441cb98984155862ddc\uncrustify-45b836cff040594994d364ad6fd3f04adc890a26-install.rule;C:\dev\ros2_rolling\build\uncrustify_vendor\CMakeFiles\1f61a89c37b27fe4d1c79f10968d9730\uncrustify-45b836cff040594994d364ad6fd3f04adc890a26-complete.rule;C:\dev\ros2_rolling\build\uncrustify_vendor\CMakeFiles\6aaed628ba48b5d83eef28c741094c56\uncrustify-45b836cff040594994d364ad6fd3f04adc890a26.rule;C:\dev\ros2_rolling\src\ament\uncrustify_vendor\CMakeLists.txt' exited with code 1. [C:\dev\ros2_rolling\build\uncrustify_vendor\uncrustify-45b836cff040594994d364ad6fd3f04adc890a26.vcxproj] Failed <<< uncrustify_vendor [6.84s, exited with code 1] Summary: 0 packages finished [10.4s] 1 package failed: uncrustify_vendor ```

Things to note:

Any idea what's going on? I made a ROS answers post recently but didn't get much traction, so I'm redirecting here.

clalancette commented 7 months ago

I have no idea what happened here, but since we run this nightly we know this isn't always a problem. I'm going to close this one out for now, but please feel free to reopen if you are still having problems and want to try to get to the bottom of this.