Closed traversaro closed 3 years ago
The working packages was win-64/ros-galactic-rosidl-generator-c-2.2.1-py38hae75d3f_0.tar.bz2
, while win-64/ros-galactic-rosidl-generator-c-2.2.1-py38hae75d3f_1.tar.bz2
is the broken one. The offending %CONDA_PREFIX%/Library/share/rosidl_generator_c/cmake/rosidl_generator_c-extras.cmake
.
For the working package (build 0), is:
# generated from rosidl_generator_c/rosidl_generator_c-extras.cmake
# use the same type of library
set(rosidl_generator_c_LIBRARY_TYPE "SHARED")
include("${CMAKE_CURRENT_LIST_DIR}/register_c.cmake")
rosidl_generator_c_extras(
"${rosidl_generator_c_DIR}/../../../lib/rosidl_generator_c/rosidl_generator_c"
"${rosidl_generator_c_DIR}/../../../Lib/site-packages/rosidl_generator_c/__init__.py"
"${rosidl_generator_c_DIR}/../resource"
)
while for the broken one (build 1) is (before the conda prefix substitution):
# generated from rosidl_generator_c/rosidl_generator_c-extras.cmake
# use the same type of library
set(rosidl_generator_c_LIBRARY_TYPE "SHARED")
include("${CMAKE_CURRENT_LIST_DIR}/register_c.cmake")
rosidl_generator_c_extras(
"${rosidl_generator_c_DIR}/../../../lib/rosidl_generator_c/rosidl_generator_c"
"C:/bld/ros-galactic-rosidl-generator-c_1634877503882/_h_env/Lib/site-packages/rosidl_generator_c/__init__.py"
"${rosidl_generator_c_DIR}/../resource"
)
Probably related to https://github.com/RoboStack/ros-galactic/commit/c4106e439fd455d9c06f62b0f8d6951af84788a7#diff-4ddd82d847248f72b93220196f66048d80d5879c148753937597486bc2e856ce . Note that the \L
that is problematic for CMake is probably inserted by the code in conda that makes the relocation, so I wonder if the issue is elsewhere.
Hi Silvio, I think this issue should actually be fixed by https://github.com/RoboStack/ros-galactic/commit/c4106e439fd455d9c06f62b0f8d6951af84788a7#diff-4ddd82d847248f72b93220196f66048d80d5879c148753937597486bc2e856ce
There was a version of ros-galactic-rosidl-generator-c (which I have overridden [i.e. it is not available anymore] as it caused trouble as reported by you) that contained backslashes. The new version contains only forward slashes, and the issue should be gone.
Can you check whether the next nightly works again?
Can you check whether the next nightly works again?
I triggered a new build in https://github.com/traversaro/yarp-ros2/actions/runs/1373905818, and indeed the problem reported in this issue is not present anymore, but the build now fails:
-- Using all available rosidl_typesupport_cpp: rosidl_typesupport_fastrtps_cpp;rosidl_typesupport_introspection_cpp
CMake Error at C:/Miniconda/envs/test/Library/share/cmake-3.21/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find Python3 (missing: Python3_NumPy_INCLUDE_DIRS NumPy) (found
version "3.10.0")
Call Stack (most recent call first):
C:/Miniconda/envs/test/Library/share/cmake-3.21/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
C:/Miniconda/envs/test/Library/share/cmake-3.21/Modules/FindPython/Support.cmake:3166 (find_package_handle_standard_args)
C:/Miniconda/envs/test/Library/share/cmake-3.21/Modules/FindPython3.cmake:485 (include)
-- Configuring incomplete, errors occurred!
See also "D:/a/yarp-ros2/yarp-ros2/build/CMakeFiles/CMakeOutput.log".
C:/Miniconda/envs/test/Library/share/rosidl_generator_py/cmake/rosidl_generator_py_generate_interfaces.cmake:20 (find_package)
See also "D:/a/yarp-ros2/yarp-ros2/build/CMakeFiles/CMakeError.log".
C:/Miniconda/envs/test/Library/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
C:/Miniconda/envs/test/Library/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:286 (ament_execute_extensions)
ros2_interfaces_ws/src/map2d_nws_ros2_msgs/CMakeLists.txt:42 (rosidl_generate_interfaces)
Probably the wrong Python is found?
Probably the wrong Python is found?
For some reason for Windows builds I was passing -DPYTHON_EXECUTABLE:PATH=%CONDA_PREFIX%\python.exe
instead of -DPython3_EXECUTABLE:PATH=%CONDA_PREFIX%\python.exe
, I guess it was related to https://github.com/ros2/ros2/issues/962 / https://github.com/ros2/python_cmake_module/issues/6 .
In any case, we can close the issue as it is indeed solved, thanks!
I have a ros-galactic based CI at https://github.com/robotology-playground/yarp-ros2, and I noticed that the last nightly job it failed on Windows with this error:
Failed CI: https://github.com/robotology-playground/yarp-ros2/runs/3971167242 . Last successful CI: https://github.com/robotology-playground/yarp-ros2/actions/runs/1366124795 .