微认证:鲲鹏软件迁移实践 —— 软件包迁移

举报
ruochen 发表于 2021/02/24 10:48:18 2021/02/24
【摘要】 鲲鹏软件迁移实践之软件包迁移

软件包迁移

1. 前言

  • 常见的Linux发行版主要分为两类:类RedHat系列和类Debian系列。类RedHat系统中,软件包的格式是rpm;类Debian系统中,软件包的格式是deb。类RedHat系统提供了rpm(全称是:RedHat Package Manager)命令来安装、卸载和升级rmp软件包;类Debian系统提供了dpkg命令来安装、卸载、升级deb软件包。

2. rpm介绍

2.1 rpm软件包组成

  • 应用程序
    • 常见的开发语言有C、C++、Java、Python等,最终编译成应用程序,应用程序主要包括
  • rpm软件包文件组成
    • rpm可以将应用程序打包,所以rpm包通常包含以上文件(二进制文件,so库文件,jar包,配置文件等)
  • 二进制和库文件
    • rpm包中与处理器架构相关包括二进制(执行文件),库文件
    • 所以将x86的rpm包重构到arm的rpm,需将rpm包含有x86的so、二进制文件,替换成arm架构so、二进制文件

2.2 rpm包获取渠道

  • 鲲鹏平台的rpm包获取渠道

3. rpm迁移

3.1 传统的rpm重构过程

  • 将x86 rpm包重构成鲲鹏rpm包流程

扫描(扫描X86 rpm,识别x86架构依赖文件)

编译(鲲鹏上重新编译x86依赖文件)

打包(鲲鹏上重新生成rpm包)

验证

3.2 鲲鹏开发者套件Porting Advisor

Porting Advisor 工具实现迁移自动化

  • Porting Advisor 工具实现了自动扫描,自动从鲲鹏Maven下载依赖文件,自动打包功能

4. rpm迁移实例

环境准备

Porting Advisor 快速重构rpm 包流程

软件分析构建中心实例

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。