OpenHarmony之Ubuntu22.04执行hb set报错

2023-11-15

错误提示

最近在使用Ubuntu22.04搭建OpenHarmony编译环境,在执行hb set命令选择开发板时出现如下报错:
在这里插入图片描述
详细log如下:

fangye@fangye-virtual-machine:~/niobeu4_src$ hb set
[OHOS ERROR] Traceback (most recent call last):
[OHOS ERROR]   File "/home/fangye/.local/lib/python3.10/site-packages/hb/__main__.py", line 84, in main
[OHOS ERROR]     status = args.command(args)
[OHOS ERROR]   File "/home/fangye/niobeu4_src/build/lite/hb_internal/set/set.py", line 45, in exec_command
[OHOS ERROR]     return set_product() == 0
[OHOS ERROR]   File "/home/fangye/niobeu4_src/build/lite/hb_internal/set/set.py", line 62, in set_product
[OHOS ERROR]     product_info = Product.product_menuconfig()
[OHOS ERROR]   File "/home/fangye/niobeu4_src/build/lite/hb_internal/common/product.py", line 260, in product_menuconfig
[OHOS ERROR]     product = menu.list_promt('product', 'Which product do you need?',
[OHOS ERROR]   File "/home/fangye/niobeu4_src/build/lite/hb_internal/cts/menuconfig.py", line 34, in list_promt
[OHOS ERROR]     return self._promt(questions, **kwargs)
[OHOS ERROR]   File "/home/fangye/niobeu4_src/build/lite/hb_internal/cts/menuconfig.py", line 25, in _promt
[OHOS ERROR]     prompt = importlib.import_module('hb_internal.cts.prompt')
[OHOS ERROR]   File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
[OHOS ERROR]     return _bootstrap._gcd_import(name[level:], package, level)
[OHOS ERROR]   File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
[OHOS ERROR]   File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
[OHOS ERROR]   File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
[OHOS ERROR]   File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
[OHOS ERROR]   File "<frozen importlib._bootstrap_external>", line 883, in exec_module
[OHOS ERROR]   File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
[OHOS ERROR]   File "/home/fangye/niobeu4_src/build/lite/hb_internal/cts/prompt.py", line 21, in <module>
[OHOS ERROR]     from prompt_toolkit.shortcuts import run_application
[OHOS ERROR]   File "/home/fangye/.local/lib/python3.10/site-packages/prompt_toolkit/__init__.py", line 16, in <module>
[OHOS ERROR]     from .interface import CommandLineInterface
[OHOS ERROR]   File "/home/fangye/.local/lib/python3.10/site-packages/prompt_toolkit/interface.py", line 19, in <module>
[OHOS ERROR]     from .application import Application, AbortAction
[OHOS ERROR]   File "/home/fangye/.local/lib/python3.10/site-packages/prompt_toolkit/application.py", line 8, in <module>
[OHOS ERROR]     from .key_binding.bindings.basic import load_basic_bindings
[OHOS ERROR]   File "/home/fangye/.local/lib/python3.10/site-packages/prompt_toolkit/key_binding/bindings/basic.py", line 9, in <module>
[OHOS ERROR]     from prompt_toolkit.renderer import HeightIsUnknownError
[OHOS ERROR]   File "/home/fangye/.local/lib/python3.10/site-packages/prompt_toolkit/renderer.py", line 11, in <module>
[OHOS ERROR]     from prompt_toolkit.styles import Style
[OHOS ERROR]   File "/home/fangye/.local/lib/python3.10/site-packages/prompt_toolkit/styles/__init__.py", line 8, in <module>
[OHOS ERROR]     from .from_dict import *
[OHOS ERROR]   File "/home/fangye/.local/lib/python3.10/site-packages/prompt_toolkit/styles/from_dict.py", line 9, in <module>
[OHOS ERROR]     from collections import Mapping
[OHOS ERROR] ImportError: cannot import name 'Mapping' from 'collections' (/usr/lib/python3.10/collections/__init__.py)
[OHOS ERROR] Unhandled error: cannot import name 'Mapping' from 'collections' (/usr/lib/python3.10/collections/__init__.py)

原因分析

在Ubuntu20.04上没有这个问题,其python版本为3.8.x,而Ubuntu22.04的python版本是3.10.x,由于hb命令是用python写的,故猜测这是由于python版本导致的问题。
根据报错提示信息:
Unhandled error: cannot import name 'Mapping' from 'collections'
可以知道报错原因是导入Mapping包时失败,在往上搜一下这个报错,果然有很多人遇到类似的问题,报错信息跟这个情况很像:
https://blog.csdn.net/hongel110/article/details/121333144

解决办法

修改报错的python脚本,将from collections import Mapping修改为from collections.abc import Mapping即可:

vim ~/.local/lib/python3.10/site-packages/prompt_toolkit/styles/from_dict.py

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OpenHarmony之Ubuntu22.04执行hb set报错 的相关文章

  • 动态向类添加类方法

    我有以下片段 FEED TYPES fan mail Fan Mail review Review tip Tip fan user Fan User fan song Fan Song fan album Fan Album played
  • 将 JSON 发布到 Python CGI

    我已经安装了 Apache2 并且 Python 可以工作 但我有一个问题 我有两页 一个是 Python 页面 另一个是带有 JQuery 的 Html 页面 有人可以告诉我如何让我的 ajax 帖子正常工作吗
  • 为什么 Python 在导入脚本时只保存脚本的字节码?

    既然执行Python字节码会比运行原始源代码更快 因为Python不需要重新编译 为什么Python在导入脚本时只保存编译后的字节码呢 为每个执行的脚本保存 pyc 文件不是更好吗 无论如何 Python 解释器的启动时间都需要时间 即使您
  • str.translate 与 str.replace - 何时使用哪一个?

    何时以及为什么使用前者而不是后者 反之亦然 目前尚不完全清楚为什么有些人使用前者以及为什么有些人使用后者 它们有不同的目的 translate只能用任意字符串替换单个字符 但一次调用可以执行多次替换 它的参数是一个特殊的表 它将单个字符映射
  • 如何使用一个模型中间层的输出作为另一个模型的输入?

    我训练一个模型A并尝试使用中间层的输出name layer x 作为模型的附加输入B 我尝试像 Keras 文档一样使用中间层的输出https keras io getting started faq how can i obtain th
  • 键入的完整命令行

    我想获得输入时的完整命令行 This join sys argv 在这里不起作用 删除双引号 另外 我不想重新加入已解析和拆分的内容 有任何想法吗 你太迟了 当键入的命令到达 Python 时 您的 shell 已经发挥了它的魔力 例如 引
  • 无法在 virtualenv 中安装 libxml2

    我有一个问题libxml2蟒蛇模块 我正在尝试将其安装在python3 虚拟环境使用以下命令 pip install libxml2 python3 但它显示以下错误 Collecting libxml2 python3 Using cac
  • 带有 mkdocs 的本地 mathjax

    我想在无法访问互联网的计算机上使用 MathJax 和 Mkdocs 因此我不能只调用 Mathjax CDN Config mkdocs yml site name My Docs extra javascript javascripts
  • Django 多对多关系(类别)

    我的目标是向我的 Post 模型添加类别 我希望以后能够按不同类别 有时是多个类别 查询所有帖子 模型 py class Category models Model categories 1 red 2 blue 3 black title
  • 设置高亮大括号的 vim 颜色主题

    如何更改突出显示大括号的 vim 配色方案 我希望实际编辑 vim 主题文件以使更改永久生效 问候 克雷格 匹配括号的自动高亮颜色称为MatchParen 您可以通过执行以下操作来更改 vimrc 中的颜色 highlight MatchP
  • 查找与另一列 Pandas 中的唯一值关联的列中的值的交集

    如果我有一个像这样的数据框 非常小的例子 col1 col2 0 a 1 1 a 2 2 b 1 3 b 2 4 b 4 5 c 1 6 c 2 7 c 3 我想要所有的交集col2当价值观与其独特性相关时col1值 因此在这种情况下 交集
  • 在请求中设置端口

    我正在尝试利用cgminer使用 Python 的 API 我对利用requests图书馆 我了解如何做基本的事情requests but cgminer想要更具体一点 我想缩小 import socket import json sock
  • 高级描述熊猫

    有没有像 pandas 那样更高级的功能 通常我会继续这样 r pd DataFrame np random randn 1000 columns A r describe 我会得到一份很好的总结 就像这样 A count 1000 000
  • 类型错误:此 COM 对象无法自动执行 makepy 过程 - 请为此对象手动运行 makepy

    这是什么错误 回溯错误 C Users DELL PycharmProjects MyNew venv Scripts python exe C Users DELL PycharmProjects MyNew agaaaaain py T
  • Python-验证我的文档 xls 中是否存在工作表

    我正在尝试在空闲时间设计一个小程序 加载 xls 文件 然后在要扫描的文档中选择一张纸 步骤1 用户导入 xls文件 导入程序后检查文件是否存在 我能做到的 第 2 步 我要求用户提供要分析的文档表 xls 的名称 这就是它停止的地方 该程
  • Python 属性和 Swig

    我正在尝试使用 swig 为一些 C 代码创建 python 绑定 我似乎遇到了一个问题 试图从我拥有的一些访问器函数创建 python 属性 方法如下 class Player public void entity Entity enti
  • Python:在字典中查找具有唯一值的键?

    我收到一个字典作为输入 并且想要返回一个键列表 其中字典值在该字典的范围内是唯一的 我将用一个例子来澄清 假设我的输入是字典 a 构造如下 a dict a cat 1 a fish 1 a dog 2 lt unique a bat 3
  • Django 将 JSON 数据传递给静态 getJSON/Javascript

    我正在尝试从 models py 中获取数据并将其序列化为views py 中的 JSON 对象 模型 py class Platform models Model platformtype models CharField max len
  • python中有没有一种方法可以将存储在列表中的正则表达式模式列表应用到单个字符串?

    我有一个正则表达式模式列表 存储在列表类型中 我想将其应用于字符串 有谁知道一个好方法 将列表中的每个正则表达式模式应用于字符串 和 如果匹配 则调用与列表中该模式关联的不同函数 如果可能的话我想用 python 来做这件事 提前致谢 im
  • 为boost python编译的.so找不到模块

    我正在尝试将 C 代码包装到 python 中 只需一个类即可导出两个函数 我编译为map so 当我尝试时import map得到像噪音一样的错误 Traceback most recent call last File

随机推荐

  • JSP-内置对象

    response动态响应的例子 response重定向的例子 通过session对象来保证 在不同页面跳转时是同一个用户
  • ehcache缓存过期时间和注解的使用。

    一 过期时间的测试 我们配置一个spring整合ehcache的例子 使用自动注解缓存的方式 进行测试 timeToIdleSeconds表示最大空闲的时间 timeToLiveSeconds表示最大存活时间 例1 结果 5秒间隔内不过期
  • 学成在线网页制作(详细)

    项目分析 如图 分为四个模块 header头部模块 精品推荐模块 编程入门模块 数据分析师模块 机器学习模块 前端工程师开发模块 footer模块 如果仔细观察的话 第2 5 6属于一个模块 样式结构相同 同样的3 4模块相同 这样只要做出
  • linux gdb 不捕获SIGPIPE信号的方法

    gdb stops at SIGPIPE By default gdb captures SIGPIPE of a process and pauses it However some program ignores SIGPIPE So
  • 【⑯MySQL

    前言 欢迎来到小K的MySQL专栏 本节将为大家带来MySQL存储过程与函数概述 创建 调用 查看 修改 删除 争议的分享 目录 前言 1 存储过程概述 2 创建存储过程 3 调用存储过程 4 存储函数的使用 5 存储过程和函数的查看 修改
  • a-descriptions-item描述列表点击按钮显示相应内容

    实现功能 点击查询按钮 显示相应数据 部分数据只读 部分数据可修改 实现思路 首先通过点击按钮事件从接口获取内容 然后通过 显示在界面上 查询按钮触发事件代码 searchQuery var that this getAction this
  • 【数据库1】win10系统下,MySQL数据库安装环境搭建

    一 MySQL下载 登录MySql网站 https www mysql com MySql官方网站 下拉页面至最末端 如图 选择downloads里面的 Mysql community server 链接 进入下载页面 如图 根据个人系统情
  • MATLAB 图像处理 灰度图 将图像中某一行或者某一列的灰度值 绘制成一条曲线

    将这些灰度值保存成一个矩阵A A imgdata 1 第一列的所有数据 若是仅仅画数据 直接用plot A 例子如下 filename I jpg imgData imread filename imshow imgData 该函数可以用来
  • Libev事件库源码阅读笔记

    Libev事件库源码阅读笔记 Intro Libev是一个基于Reactor模式的事件库 效率较高 Benchmark 并且代码精简 4 15版本8000多行 是学习事件驱动编程的很好的资源 本文不会介绍Reactor模式 也不会介绍Lib
  • Windows 下如何使用管理员的身份运行 DOS 窗口

    如图 有时候我们使用命令行会发现类似上面的错误 这是因为我们没有使用管理员的身份运行 DOS 窗口导致的 那么如何解决 解决办法 先关闭命令提示符 然后打开电脑的系统盘C盘 打开路径 C Windows System32 然后在右上角的搜索
  • 数据倾斜

    数据倾斜发生时的现象 1 绝大多数task执行得都非常快 但个别task执行的极慢 2 原本能正常执行的Spark作业 某天突然爆出OOM 内存溢出 异常 观察异常栈 是我们写的业务代码造成的 数据倾斜发生的原理 在进行shuffle的时候
  • Python 文件读取的4种方式

    对于Python程序员来说 读取文件是一项基本操作 Python提供了多种读取文件的方式 以下是其中的4种常用方式 1 使用 open 函数和 read 方法 使用 open 函数和 read 方法是最基本的文件读取方式 它可以读取整个文件
  • mysql中的/、div的区别

    运算符为实数除 其运算的结果为实型 div为整除 该运算符只取商的整数部分 而不会四舍五入 网上说要求除数和被除数均为整形 经我测试 网上的说法有误 mysql gt select 100 22 div 2 1 100 22 div 2 1
  • WinServer 2012 R2 AD 组策略 将域用户加入本地管理员组

    需求 域用户shihua ma添加入到本地管理员组 先查看本地管理员组 net localgroup administrators 通过以上得知 shihua ma这个域用户不在本地管理员组 下面介绍如何将域用户自动加入到本地管理员组 一
  • C语言_函数递归举例

    1 递归和非递归分别实现求第n个斐波那契数 求第 n 个斐波那契数 include
  • 使用vscode如何建立vue模板

    目标 我们希望每次新建 vue文件后 VSCODE能够根据配置 自动生成我们想要的内容 方法 打开VSCODE编辑器 依次选择 文件 gt 首选项 gt 用户代码片段 此时 会弹出一个搜索框 我们输入vue 如下 选择vue后 VSCODE
  • 十、Fiddler抓包工具详细教程 — AutoResponder应用场景

    文章内容有配套的 学习视频和笔记都放在了文章末尾 简单介绍几个应用场景 场景一 生产环境的请求重定向到本地文件 验证结果 例如 某网站或者系统修改了问题 但尚未更新到生产环境 可重定向到本地修改后的文件进行验证 这样能够避免更新到生产环境后
  • JAVASCRIPT使用参考

    JS参考手册 https www w3school com cn jsref index asp 几点注意 JavaScript是一门客户端轻量级脚本语言 它运行在客户端的浏览器中 每一个浏览器都有JavaScript的解析引擎 脚本语言
  • Flink---1、概述、快速上手

    1 Flink概述 1 1 Flink是什么 Flink的官网主页地址 https flink apache org Flink的核心目标是 数据流上有状态的计算 Stateful Computations over Data Stream
  • OpenHarmony之Ubuntu22.04执行hb set报错

    错误提示 最近在使用Ubuntu22 04搭建OpenHarmony编译环境 在执行hb set命令选择开发板时出现如下报错 详细log如下 fangye fangye virtual machine niobeu4 src hb set