簡體   English   中英

ModuleNotFoundError:盡管在 carla-ros-bridge wsl-2 中使用 colcon build 時安裝了 empy,但沒有名為“em”的模塊

[英]ModuleNotFoundError: No module named 'em' despite empy being installed when using colcon build in carla-ros-bridge wsl-2

在 wsl-2 的 carla-ros-bridge 根目錄中運行 colcon build 時, python 拋出ModuleNotFoundError: No module named 'em' 具體來說,它會產生這個 output:

--- stderr: carla_ros_scenario_runner_types
CMake Error at /opt/ros/foxy/share/rosidl_adapter/cmake/rosidl_adapt_interfaces.cmake:60 (message):
  execute_process(/home/jakob/miniconda3/bin/python3 -m rosidl_adapter
  --package-name carla_ros_scenario_runner_types --arguments-file
  /home/jakob/carla-ros-bridge/build/carla_ros_scenario_runner_types/rosidl_adapter__arguments__carla_ros_scenario_runner_types.json
  --output-dir
  /home/jakob/carla-ros-bridge/build/carla_ros_scenario_runner_types/rosidl_adapter/carla_ros_scenario_runner_types
  --output-file
  /home/jakob/carla-ros-bridge/build/carla_ros_scenario_runner_types/rosidl_adapter/carla_ros_scenario_runner_types.idls)
  returned error code 1:

  Traceback (most recent call last):

    File "/home/jakob/miniconda3/lib/python3.10/runpy.py", line 196, in _run_module_as_main
      return _run_code(code, main_globals, None,
    File "/home/jakob/miniconda3/lib/python3.10/runpy.py", line 86, in _run_code
      exec(code, run_globals)
    File "/opt/ros/foxy/lib/python3.8/site-packages/rosidl_adapter/__main__.py", line 19, in <module>
      sys.exit(main())
    File "/opt/ros/foxy/lib/python3.8/site-packages/rosidl_adapter/main.py", line 53, in main
      abs_idl_file = convert_to_idl(
    File "/opt/ros/foxy/lib/python3.8/site-packages/rosidl_adapter/__init__.py", line 18, in convert_to_idl
      from rosidl_adapter.msg import convert_msg_to_idl
    File "/opt/ros/foxy/lib/python3.8/site-packages/rosidl_adapter/msg/__init__.py", line 16, in <module>
      from rosidl_adapter.resource import expand_template
    File "/opt/ros/foxy/lib/python3.8/site-packages/rosidl_adapter/resource/__init__.py", line 19, in <module>
      import em

  ModuleNotFoundError: No module named 'em'

Call Stack (most recent call first):
  /opt/ros/foxy/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:130 (rosidl_adapt_interfaces)
  CMakeLists.txt:39 (rosidl_generate_interfaces)


---

我在別處讀到這個錯誤是由 package “empy” 丟失引起的,所以我運行pip3 install empypip install empy ,都產生了 output: Defaulting Defaulting to user installation because normal site-packages is not writeable Requirement already satisfied: empy in /home/jakob/.local/lib/python3.8/site-packages (3.3.4)

python -V 輸出:Python 2.7.18 python3 -V 輸出:Python 3.8.10

我沒有辦法解決這個問題

我試過: - 安裝 em 並再次運行構建(拋出不同的錯誤消息) - 重新安裝 empy (無更改) - 刪除 carla-ros-bridge 根目錄並再次克隆它

我發現了錯誤。 如果查看 Traceback,您會發現 Python 使用兩個不同的路徑指向兩個不同的版本。 特別/home/jakob/miniconda3/lib/python3.10//opt/ros/foxy/lib/python3.8/site-packages/ 這是因為我在與 carla-ros-bridge 不同的 miniconda 環境中構建 ros foxy。 修復是刪除 carla ros 橋並下載,然后在使用 python 3.8 的環境中再次構建它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM