python-3.x Ros 2 Colcon构建失败,rclpy -错误:未在范围中声明“PyErr_warnformat”

14ifxucb  于 2023-01-14  发布在  Python
关注(0)|答案(1)|浏览(348)

尝试在ubuntu20.04中安装Ros 2 humble,当执行命令--〉Colcon build --symlink-install时,我得到以下错误

--- stderr: rclpy 
In file included from /home/kalyan/ros2_humble/src/ros2/rclpy/rclpy/src/rclpy/node.hpp:24,
                 from /home/kalyan/ros2_humble/src/ros2/rclpy/rclpy/src/rclpy/action_client.hpp:26,
                 from /home/kalyan/ros2_humble/src/ros2/rclpy/rclpy/src/rclpy/_rclpy_pybind11.cpp:24:
/home/kalyan/ros2_humble/src/ros2/rclpy/rclpy/src/rclpy/context.hpp: In destructor ‘rclpy::InitOptions::~InitOptions()’:
/home/kalyan/ros2_humble/src/ros2/rclpy/rclpy/src/rclpy/context.hpp:49:7: error: ‘PyErr_WarnFormat’ was not declared in this scope; did you mean ‘PyErr_Format’?
   49 |       PyErr_WarnFormat(
      |       ^~~~~~
      |       PyErr_Format
make[2]: * [CMakeFiles/_rclpy_pybind11.dir/build.make:76: CMakeFiles/_rclpy_pybind11.dir/src/rclpy/_rclpy_pybind11.cpp.o] Error 1
make[1]: * [CMakeFiles/Makefile2:104: CMakeFiles/_rclpy_pybind11.dir/all] Error 2
make: * [Makefile:141: all] Error 2
---
Failed   <<< rclpy [16.2s, exited with code 2]
Aborted  <<< rclcpp [26.0s]                                                                                                                                      
Aborted  <<< ros2cli_test_interfaces [1min 29s]                                                                                                  
Aborted  <<< diagnostic_msgs [1min 32s]                                             

Summary: 195 packages finished [4min 31s]
  1 package failed: rclpy
  3 packages aborted: diagnostic_msgs rclcpp ros2cli_test_interfaces
  1 package had stderr output: rclpy
  141 packages not processed

帮助我克服这个错误。pyhton 3版本--〉3.8.10我也有python3.9版本,

3gtaxfhh

3gtaxfhh1#

如果python版本小于3.2,它没有PyErr_WarnFormat()。参见https://docs.python.org/3/c-api/exceptions.html。我删除了/usr/include/python2.7/,并将默认python版本设置为3.8.10。它对我有效。

相关问题