Raspbian carla 客户端——找不到可用的 Python 版本

问题描述 投票:0回答:1

我想为 Raspbian 安装 Python carla 客户端模块。该模块存在,但我找不到能够安装它的 Python 版本。

早期版本 - 与 3.5.9 相同的错误

$ pip3.5 install carla
Could not find a version that satisfies the requirement carla (from versions: )

$ pip3.6 install carla
source/libcarla/libcarla.cpp:7:10: fatal error: carla/Memory.h: No such file or directory

$ pip3.7 install carla
source/libcarla/libcarla.cpp:7:10: fatal error: carla/Memory.h: No such file or directory$ 

$ pip3.8 install carla
File "<string>", line 31, in get_libcarla_extensions
AttributeError: module 'platform' has no attribute 'dist'

更高版本 - 与 3.8.1 相同的错误

python pip raspberry-pi raspbian carla
1个回答
0
投票

您在尝试跨不同 Python 版本在 Raspbian 系统上安装 Carla Python 客户端时似乎遇到了多个问题。让我们分解一下可能出现的问题:

问题一:Python版本兼容性

  • 您尝试过的每个版本似乎都遇到了特定问题,这可能是由于以下因素的组合造成的:
    1. 过时或缺少依赖项(例如
      carla/Memory.h
      )。
    2. Python 兼容性问题(例如,Python 3.8 及更高版本中的
      AttributeError: module 'platform' has no attribute 'dist'
      )。

一般解决方法:

  1. 检查兼容的Python版本

    • carla
      与较新的 Python 版本存在更多兼容性问题。您可能需要确保使用适用于您的 Raspbian 系统和 Carla 的正确 Python 版本。通常,Python 3.7 是更安全的选择,但您似乎遇到了
      carla/Memory.h
      错误。
  2. 安装 Carla 的依赖项:

    • 缺少像
      carla/Memory.h
      这样的标头表示 Carla 源代码依赖项(例如 boost 或 Carla 特定库)未正确安装。在运行
      pip
      安装命令之前安装这些依赖项。

    要解决此问题:

    sudo apt-get install build-essential libboost-all-dev
    
  3. 修复

    platform.dist
    已弃用

    • Python 3.8 中删除了

      dist()
      模块中的
      platform
      方法。卡拉可能依赖它。要解决这个问题:

      • 您可以降级到 Python 3.7(如果其他解决方案不起作用,这是最后的手段)。
      • 应用补丁或解决方法以使用
        distro
        而不是
        platform.dist

      试试这个:

      sudo pip3 install distro
      

      然后,在 Carla 安装过程中,修改源代码,将相应文件中的

      platform.dist()
      替换为
      distro.linux_distribution()

  4. 从源代码构建 Carla:

    • 如果 pip 安装由于丢失文件或兼容性问题而继续失败,您可能需要直接从源代码构建 Carla。

      您可以尝试以下步骤来手动构建 Carla:

      sudo apt-get update
      sudo apt-get install clang-8 lld-8
      git clone https://github.com/carla-simulator/carla
      cd carla
      ./Update.sh
      make PythonAPI
      

      此过程将从源代码构建 Carla 及其 Python 绑定,并在此过程中解决依赖关系。

  5. 检查 Raspbian 兼容性

    • 确保 Carla 的特定版本与您的 Raspbian 系统兼容。某些模块可能不支持 ARM 架构(Raspberry Pi 使用该架构)。您可能需要搜索 Carla 的特定 ARM 兼容版本或分支。

最后步骤

解决所有构建问题并确保兼容性后,请尝试再次安装 Python 包:

pip3.7 install carla
© www.soinside.com 2019 - 2024. All rights reserved.