银河麒麟arm64系统Python环境配置指南:从pip3到onnxruntime实战

银河麒麟v10安装Anaconda(python大蟒蛇)+pycharm安装 Anaconda中文是大蟒蛇,是一个用于科学计算的Python发行版,预装大量的模块包,不需要单独下载python进行安装。 阅读详情

银河麒麟ARM64系统Python生态构建:从零到深度学习推理实战

最近在几台搭载飞腾处理器的国产设备上折腾开发环境,感触颇深。对于习惯了x86生态的开发者来说,初次接触银河麒麟这类基于ARM64架构的国产操作系统,确实会遇到不少“水土不服”的情况。特别是Python环境,看似简单的pip install背后,隐藏着架构差异、依赖冲突、源配置等一系列需要特别注意的细节。这篇文章就是基于我在长城TN140A2(飞腾D2000平台)上从零搭建完整Python机器学习环境的实战经验,重点分享那些官方文档里不会写的“坑”和高效解决方案。无论你是刚接手国产化项目的开发者,还是需要在ARM服务器上部署AI应用的技术人员,这些经验都能帮你少走弯路。

1. 系统准备与基础环境调优

在银河麒麟V10 SP1上开始Python之旅前,有几个系统层面的准备工作至关重要。这些步骤看似基础,却能从根本上避免后续安装过程中的各种诡异错误。

1.1 系统更新与源配置

新安装的银河麒麟系统,默认的软件源可能不是最新或最全的。首先应该更新系统并配置合适的软件源。

# 更新系统包列表
sudo apt update

# 升级所有可升级的包
sudo apt upgrade -y

# 安装基础开发工具
sudo apt install build-essential cmake git wget curl -y

银河麒麟基于Ubuntu LTS分支,但有自己的软件仓库。如果你需要某些Ubuntu上的软件包,可以谨慎地添加Ubuntu的ARM64源。不过要注意版本兼容性,我建议优先使用麒麟官方源和国内镜像源。

注意:混合使用不同发行版的软件源可能导致依赖冲突甚至系统不稳定。添加第三方源前,最好先备份原有的源列表文件。

一个更安全的做法是只使用银河麒麟官方源和国内镜像加速。编辑源列表文件:

sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
sudo nano /etc/apt/sources.list

确保文件中包含官方源地址。如果需要加速下载,可以将源地址替换为国内镜像站,但必须确认该镜像站支持银河麒麟ARM64架构。

1.2 Python版本管理与虚拟环境

银河麒麟V10 SP1默认可能已经安装了Python 3.8或3.9。但在实际开发中,我们经常需要管理多个Python版本或创建隔离的环境。

# 查看系统已安装的Python版本
python3 --version
ls /usr/bin/python*

# 安装Python虚拟环境工具
sudo apt install python3-venv python3-pip -y

# 创建项目专用的虚拟环境
python3 -m venv ~/projects/onnx_env

# 激活虚拟环境
source ~/projects/onnx_env/bin/activate

使用虚拟环境有几个明显的好处:

  • 依赖隔离:不同项目可以使用不同版本的库而互不干扰
  • 环境可重现:通过requirements.txt可以精确复现环境
  • 避免权限问题:不需要使用sudo pip install

我习惯为每个项目创建独立的虚拟环境,并在项目目录下保存requirements.txt文件。这样即使换了机器或重装系统,也能快速恢复开发环境。

2. ARM64架构下的Python包安装策略

ARM64架构与常见的x86_64架构在二进制兼容性上有本质区别。很多Python包都提供了预编译的x86_64轮子(wheel),但ARM64的预编译包相对较少。这意味着在ARM平台上,更多包需要从源码编译安装。

2.1 pip配置优化

首先优化pip的配置,这能显著提升安装速度和成功率。

# 升级pip到最新版本
python -m pip install --upgrade pip

# 创建pip配置文件
mkdir -p ~/.pip
nano ~/.pip/pip.conf

在pip.conf中添加以下内容:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
trusted-host = pypi.tuna.tsinghua.edu.cn
timeout = 120
retries = 10

[install]
no-binary = :all:

这里有几个关键点:

  • 使用国内镜像源:清华源对ARM架构的支持相对较好
  • 增加超时和重试:编译安装耗时较长,需要更长的超时设置
  • no-binary参数:强制从源码编译,避免安装不兼容的预编译包

2.2 编译依赖与系统库

从源码编译Python包需要相应的编译工具和系统库。以下是在银河麒麟ARM64上必须安装的基础编译环境:

# 安装Python开发头文件
sudo apt install python3-dev -y

# 安装科学计算相关的基础库
sudo apt install libblas-dev liblapack-dev libatlas-base-dev -y

# 安
避坑指南:银河麒麟arm64系统安装onnxruntime时可能遇到的5个依赖问题及解决方法 本文针对在银河麒麟V10 SP1 arm64系统上安装onnxruntime时常见的5大依赖问题,提供了详细的解决方案。重点剖析了libgomp版本冲突、libopenblas符号冲突、系统与Python包管理器协调、特定架构轮子缺失及动态链接库路径配置等核心难题,帮助开发者高效部署国产化AI推理环境。 阅读详情

相关推荐

飞腾D2000笔记本上银河麒麟V10 SP1安装onnxruntime全记录(附性能对比)

本文详细记录了在搭载飞腾D2000处理器的长城笔记本上,于银河麒麟V10 SP1国产操作系统中部署ONNX Runtime AI推理引擎的全过程。内容涵盖ARM64架构下的环境配置、依赖安装、性能调优策略,并以YOLOv5模型为例进行了深度性能对比分析,为国产化平台AI应用部署提供了实用指南。

weixin_29072299的博客 394

国产飞腾D2000笔记本实战:银河麒麟V10 SP1 arm64版安装onnxruntime全记录

本文详细记录了在搭载飞腾D2000处理器的国产笔记本上,为银河麒麟V10 SP1 arm64操作系统安装和配置onnxruntime AI推理引擎的全过程。内容涵盖从基础环境准备、依赖安装、到实战性能测试与优化,重点解决了ARM64架构下的适配问题,并提供了YOLOv5模型的性能对比数据,为在国产化平台上部署AI应用提供了实用参考。

weixin_29103191的博客 359

国产操作系统也能玩转Python?银河麒麟+miniconda环境配置全攻略

本文详细介绍了在国产操作系统银河麒麟上配置miniconda环境的完整流程,包括系统检查、下载安装、镜像源配置及常见问题解决。通过miniconda,开发者可以在银河麒麟上高效管理Python环境,支持多种开发场景,助力国产系统生态建设。

weixin_28839549的博客 354

【合规领域】【信息科学与工程学】计算机科学与自动化——第五百篇 国产化/XC解决方案 第二篇 海光CPU/DPU芯片适配01

信创软件与海光CPU/DCU(深算单元,常被统称为海光GPU加速卡)的适配,核心思路是:海光CPU兼容x86指令集、海光DCU兼容"类CUDA"环境,因此绝大多数x86应用和CUDA生态组件可以通过"轻量迁移"而非"重写"的方式落地。本条目的目标是把"海光x86 CPU + 海光DCU加速卡 + 统信UOS/银河麒麟 + 国密算法"串成一条可验收的链路。海光CPU(C86系列):兼容x86指令集(完整x86-64及SSE、AVX等主流扩展),基于AMD Zen1微架构深度定制的国产路线,国内唯一获得x86指

weixin_49199313的博客 116

Autosar开发实战:DaVinci Configurator Pro新建工程保姆级教程(附目录结构解析)

本文详细介绍了使用DaVinci Configurator Pro创建Autosar工程的完整流程,包括环境准备、工程配置、目录结构解析及常见问题排查。通过实战演示和深度解读,帮助开发者快速掌握工具使用技巧,优化工程管理,提升开发效率。特别适合需要理解Autosar开发中DaVinci Config工具链的工程师。

weixin_30872157的博客 463

Flash芯片的VCC上电到可操作时间过长

Flash的VCC上电到操作时间(tVSL)通常有最大值限制,如果超过这个时间,核心风险是状态机不同步和指令锁存错误。比如芯片内部振荡器可能已经尝试启动又休眠了,但主控却在这之后才发送指令,导致完全 misinterpreted。Flash芯片的(从电源上电到可以正常进行读写操作的时间)如果过长,会产生一系列负面影响简单来说,这个时间过长意味着电源上升速度太慢,违反了芯片的要求。

qq_61918649的博客 724

遥感图像融合实战:5分钟搞懂全色与多光谱图像如何提升分辨率(附Python代码)

本文通过实战案例,详细解析了如何利用全色锐化技术融合全色与多光谱遥感图像,以提升图像分辨率。文章深入浅出地介绍了核心概念、环境配置、经典GS融合算法的Python代码实现,并对比了不同算法的优劣,最后提供了效果评估方法与实战陷阱分析,帮助读者快速掌握遥感图像融合的关键技术。

weixin_29041195的博客 397

ABB机器人与西门子PLC、工业相机联合实现无序抓取的完整调试方案

将此方案导入系统后,逐步执行调试,确保各环节信号正常触发,即可实现高效无序抓取!

CHUXUEZHE8210的博客 1997

Origin2018(汉化版)在使用科学计数法的时候如何将坐标刻度的0.0改成0

文章目录1 问题2 解决方法 1 问题 先看下面这张图,当我使用科学计数法时,纵坐标出现了0.0的字样,这样看起来很不美观。有些期刊还会有要求,不能出现0.0的格式。 图1 那么该怎么将它改成0呢?首先让我们尝试着用Origin自带的属性,看看能不能设置。 2 解决方法 解决方法一: step1: 双击坐标轴,打开坐标轴属性设置。 step2: 在刻度线标签选项中设置左轴的显示 图2 会发现,按照图2的方式改好之后,其它的小数位也全没了,如果但是有些数字就被覆盖了,这显然不是我

qq_40077565的博客 2万+

STM32L431电池供电项目实战:用STOP2模式把功耗降到5uA以下(CubeMX配置详解)

本文详细介绍了如何在STM32L431电池供电项目中利用STOP2模式实现5μA以下的超低功耗设计。通过CubeMX配置、硬件优化和软件策略,成功将农业温湿度监测节点的待机功耗控制在4.7μA,确保CR2032电池供电下3年以上的工作寿命。文章包含完整的低功耗实现路径和实测数据,特别适合物联网边缘设备开发者参考。

weixin_30345577的博客 395

Python爬虫 汽车之家 车型销量--参数分析与实现

【代码】Python爬虫 汽车之家 车型销量--参数分析与实现。

2201_76125393的博客 850

用 CL_SALV_TREE 把层级数据做成一棵会呼吸的 ABAP ALV 树:从类继承扫描到事件交互的完整拆解

本文介绍了SAP ABAP中使用CL_SALV_TREE实现树形ALV报表的方法。该技术将层级数据(如类继承关系)以可展开/折叠的树形结构展示,解决了传统ALV Grid无法直观显示层次结构的问题。核心实现采用"数据表+层级表"分离的设计模式:数据表存储节点业务信息,层级表维护父子关系。通过add_node方法动态构建树形结构,支持设置节点文本、图标和事件。文中提供了完整示例代码,演示了如何递归扫描ABAP类继承关系并构建树形ALV,这种技术特别适用于展示类族谱、权限树等层级数据,能显著

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 207

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

上一篇: 机器视觉工程师必看:如何通过Python+OpenCV优化工业相机采集性能(附代码)
下一篇: lwIP协议栈深度优化指南:如何给正点原子开发板节省20%内存(FreeRTOS版)
vim8coder
博客等级 码龄1天 0粉丝 1693原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值