Closed danitruc6 closed 2 months ago
I’d recommend following the FAQ exactly - in your case, try “cmake_minimum_required(VERSION 3.8...3.15)”
Thanks, I have added “cmake_minimum_required(VERSION 3.8...3.15)”, but I'm not understanding how to use the FindPythonInterp
to fix this issue.
Can you please explain it?
I'm currently stuck here:
❯ colcon build --packages-select tutorial_interfaces --cmake-args -DPython_EXECUTABLE=$CONDA_PREFIX/bin/python -DPython3_EXECUTABLE=$CONDA_PREFIX/bin/python -DPYTHON_EXECUTABLE=$CONDA_PREFIX/bin/python -DPython3_FIND_STRATEGY=LOCATION -DPython_FIND_STRATEGY=LOCATION
Starting >>> tutorial_interfaces
--- stderr: tutorial_interfaces
CMake Warning (dev) at /Users/danitruc/miniconda3/envs/ros2_env/share/rosidl_generator_py/cmake/rosidl_generator_py_generate_interfaces.cmake:20 (find_package):
Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
are removed. Run "cmake --help-policy CMP0148" for policy details. Use
the cmake_policy command to set the policy and suppress this warning.
Call Stack (most recent call first):
/Users/danitruc/miniconda3/envs/ros2_env/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
/Users/danitruc/miniconda3/envs/ros2_env/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:286 (ament_execute_extensions)
CMakeLists.txt:26 (rosidl_generate_interfaces)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at /Users/danitruc/miniconda3/envs/ros2_env/share/python_cmake_module/cmake/Modules/FindPythonExtra.cmake:52 (find_package):
Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
are removed. Run "cmake --help-policy CMP0148" for policy details. Use
the cmake_policy command to set the policy and suppress this warning.
Call Stack (most recent call first):
/Users/danitruc/miniconda3/envs/ros2_env/share/rosidl_generator_py/cmake/rosidl_generator_py_generate_interfaces.cmake:23 (find_package)
/Users/danitruc/miniconda3/envs/ros2_env/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
/Users/danitruc/miniconda3/envs/ros2_env/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:286 (ament_execute_extensions)
CMakeLists.txt:26 (rosidl_generate_interfaces)
This warning is for project developers. Use -Wno-dev to suppress it.
/Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: warning: changes being made to the file will invalidate the code signature in: /Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/libtutorial_interfaces__rosidl_typesupport_fastrtps_c.dylib
[cctools-port]: generating fake signature for '/Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/libtutorial_interfaces__rosidl_typesupport_fastrtps_c.dylib'
/Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: warning: changes being made to the file will invalidate the code signature in: /Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/libtutorial_interfaces__rosidl_typesupport_introspection_c.dylib
[cctools-port]: generating fake signature for '/Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/libtutorial_interfaces__rosidl_typesupport_introspection_c.dylib'
/Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: warning: changes being made to the file will invalidate the code signature in: /Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/libtutorial_interfaces__rosidl_typesupport_c.dylib
[cctools-port]: generating fake signature for '/Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/libtutorial_interfaces__rosidl_typesupport_c.dylib'
error: /Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: no LC_RPATH load command with path: /Users/danitruc/ros2_ws/build/tutorial_interfaces/rosidl_generator_py/tutorial_interfaces found in: /Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/python3.11/site-packages/tutorial_interfaces/tutorial_interfaces_s__rosidl_typesupport_fastrtps_c.cpython-311-darwin.so (for architecture arm64), required for specified option "-delete_rpath /Users/danitruc/ros2_ws/build/tutorial_interfaces/rosidl_generator_py/tutorial_interfaces"
error: /Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: no LC_RPATH load command with path: /Users/danitruc/ros2_ws/build/tutorial_interfaces found in: /Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/python3.11/site-packages/tutorial_interfaces/tutorial_interfaces_s__rosidl_typesupport_fastrtps_c.cpython-311-darwin.so (for architecture arm64), required for specified option "-delete_rpath /Users/danitruc/ros2_ws/build/tutorial_interfaces"
error: /Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: no LC_RPATH load command with path: /Users/danitruc/ros2_ws/build/tutorial_interfaces/rosidl_generator_py/tutorial_interfaces found in: /Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/python3.11/site-packages/tutorial_interfaces/tutorial_interfaces_s__rosidl_typesupport_introspection_c.cpython-311-darwin.so (for architecture arm64), required for specified option "-delete_rpath /Users/danitruc/ros2_ws/build/tutorial_interfaces/rosidl_generator_py/tutorial_interfaces"
error: /Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: no LC_RPATH load command with path: /Users/danitruc/ros2_ws/build/tutorial_interfaces found in: /Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/python3.11/site-packages/tutorial_interfaces/tutorial_interfaces_s__rosidl_typesupport_introspection_c.cpython-311-darwin.so (for architecture arm64), required for specified option "-delete_rpath /Users/danitruc/ros2_ws/build/tutorial_interfaces"
error: /Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: no LC_RPATH load command with path: /Users/danitruc/ros2_ws/build/tutorial_interfaces/rosidl_generator_py/tutorial_interfaces found in: /Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/python3.11/site-packages/tutorial_interfaces/tutorial_interfaces_s__rosidl_typesupport_c.cpython-311-darwin.so (for architecture arm64), required for specified option "-delete_rpath /Users/danitruc/ros2_ws/build/tutorial_interfaces/rosidl_generator_py/tutorial_interfaces"
error: /Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: no LC_RPATH load command with path: /Users/danitruc/ros2_ws/build/tutorial_interfaces found in: /Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/python3.11/site-packages/tutorial_interfaces/tutorial_interfaces_s__rosidl_typesupport_c.cpython-311-darwin.so (for architecture arm64), required for specified option "-delete_rpath /Users/danitruc/ros2_ws/build/tutorial_interfaces"
error: /Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: no LC_RPATH load command with path: /Users/danitruc/ros2_ws/build/tutorial_interfaces found in: /Users/danitruc/ros2_ws/install/tutorial_interfaces/lib/libtutorial_interfaces__rosidl_generator_py.dylib (for architecture arm64), required for specified option "-delete_rpath /Users/danitruc/ros2_ws/build/tutorial_interfaces"
---
Finished <<< tutorial_interfaces [2.70s]
Summary: 1 package finished [2.99s]
1 package had stderr output: tutorial_interfaces
I think the build succeeded despite the messages
Oh yes, you are right, the build succeeded and it's working as expected.
I guess I can fix the CMP0148 by adding:
if(POLICY CMP0148)
cmake_policy(SET CMP0148 OLD)
endif()
Just before closing this issue, I would like to know the following.
I'm still getting this part of the message, are this warnings expected since I'm on MacOS? It has somethind to do with the code signing.
❯ colcon build --packages-select my_robot_interfaces
Starting >>> my_robot_interfaces
--- stderr: my_robot_interfaces
/Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: warning: changes being made to the file will invalidate the code signature in: /Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/libmy_robot_interfaces__rosidl_typesupport_fastrtps_c.dylib
[cctools-port]: generating fake signature for '/Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/libmy_robot_interfaces__rosidl_typesupport_fastrtps_c.dylib'
/Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: warning: changes being made to the file will invalidate the code signature in: /Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/libmy_robot_interfaces__rosidl_typesupport_introspection_c.dylib
[cctools-port]: generating fake signature for '/Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/libmy_robot_interfaces__rosidl_typesupport_introspection_c.dylib'
/Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: warning: changes being made to the file will invalidate the code signature in: /Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/libmy_robot_interfaces__rosidl_typesupport_c.dylib
[cctools-port]: generating fake signature for '/Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/libmy_robot_interfaces__rosidl_typesupport_c.dylib'
/Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: warning: changes being made to the file will invalidate the code signature in: /Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/python3.11/site-packages/my_robot_interfaces/my_robot_interfaces_s__rosidl_typesupport_fastrtps_c.cpython-311-darwin.so
[cctools-port]: generating fake signature for '/Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/python3.11/site-packages/my_robot_interfaces/my_robot_interfaces_s__rosidl_typesupport_fastrtps_c.cpython-311-darwin.so'
/Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: warning: changes being made to the file will invalidate the code signature in: /Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/python3.11/site-packages/my_robot_interfaces/my_robot_interfaces_s__rosidl_typesupport_introspection_c.cpython-311-darwin.so
[cctools-port]: generating fake signature for '/Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/python3.11/site-packages/my_robot_interfaces/my_robot_interfaces_s__rosidl_typesupport_introspection_c.cpython-311-darwin.so'
/Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: warning: changes being made to the file will invalidate the code signature in: /Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/python3.11/site-packages/my_robot_interfaces/my_robot_interfaces_s__rosidl_typesupport_c.cpython-311-darwin.so
[cctools-port]: generating fake signature for '/Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/python3.11/site-packages/my_robot_interfaces/my_robot_interfaces_s__rosidl_typesupport_c.cpython-311-darwin.so'
/Users/danitruc/miniconda3/envs/ros2_env/bin/install_name_tool: warning: changes being made to the file will invalidate the code signature in: /Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/libmy_robot_interfaces__rosidl_generator_py.dylib
[cctools-port]: generating fake signature for '/Users/danitruc/ros2_ws/install/my_robot_interfaces/lib/libmy_robot_interfaces__rosidl_generator_py.dylib'
---
Finished <<< my_robot_interfaces [1.06s]
Summary: 1 package finished [1.26s]
1 package had stderr output: my_robot_interfaces
I think you can safely ignore these :). They’ve been around for a while, and seeing that the binaries work, it’s too much trouble to debug.
Got it, thank you very much @Tobias-Fischer
I'm already following steps from FAQ.
I started getting the error:
Then I followed the FAQ recommendation and got:
For that I upgraded
cmake_minimum_required
from 3.8 to 3.28 to avoid the following error:And finally this is the error I'm getting and not knowing how to fix it.
CMakeLists.txt file:
Conda info:
Conda list:
conda env list