Devkit代码迁移工具
【课堂笔记】
第二讲:手把手带你使用代码迁移工具实现源码迁移
目标:学习完本节课后,能够对跨平台软件移有一定的了解,同时掌握代码迁移工具的使用,能够熟练使用迁移工具执行迁移任务
1:源码迁移介绍
1.1背景介绍
在国产替代的大背景下,鲲鹏计算平台是一个非常有潜力的产业。为了解决开发者在×86平台应用向鲲鹏平台移植的过程中遇到的一系列的痛点问题,华为推出了鲲鹏代码迁移工具(Porting Advisor),帮助开发者加速将×86环境下的应用迁移至鲲鹏平台。本文根据华为鲲鹏计算工具链项目组的工具化软件迁移经验总结了鲲鹏代码迁移工具的实际使用经验,期望能帮助开发者了解如何使用该工具,提高开发者的软件迁移效率。
1.2工具支持的功能特性

1.3支持源码类型

1.4迁移流程

2:实践项目
2.1 实战项目一:
开源软件smartdenovo-master迁移实战
2.1.1前提条件
A:服务器和操作系统运行正常。
B:PC端已安装SSH远程登陆工具
C:Porting Advisor已在准备好的×86平台环境和鲲鹏平台环境中完成安装并正常运行。
D:待迁移的相关软件包、源代码已准备就绪。
2.1.2迁移计划
A:利用Porting Advisor的源码迁移功能对获取到的smartdenovo源代码进行扫描,获取其so库依赖关系、可迁移性、迁移工作量等分析结果。
B:根据 Porting Advisor的源码迁移功能分析得到的smartdenovo依赖关系去准备对应的so库。
C:检查 martdenovo源代码的源代码分析报告,获取编译构建文件、.h/.c等源代码文件的修改建议,并根据修改建议进行修改。
D:用修改后的源代码进行编译,生成鲲鹏版本的 smartdenovo软件。
E:使用鲲鹏版本的martdenovo软件进行部署和简单的验证。
2.1.3操作步骤







2.2实战项目二:
开源软件dl_poly迁移实战
2.2.1前提条件
A:服务器和操作系统运行正常。
B:PC端已安装SSH远程登陆工具
C:Porting Advisor已在准备好的×86平台环境和鲲鹏平台环境中完成安装并正常运行。
D:待迁移的相关软件包、源代码已准备就绪。
2.2.2操作步骤




【总结】
本次软件迁移实战中,通过对软件迁移过程的完整模拟,覆盖了用户利用代码迁移工具对迁移过程进行前期分析、中期修改和后期编译、重构、验证的过程。在其它软件的迁移中,可以参考本实践的思路和操作过程进行操作。
Devkit代码迁移工具
【课堂笔记】
第二讲:手把手带你使用代码迁移工具实现源码迁移
目标:学习完本节课后,能够对跨平台软件移有一定的了解,同时掌握代码迁移工具的使用,能够熟练使用迁移工具执行迁移任务
1:源码迁移介绍
1.1背景介绍
在国产替代的大背景下,鲲鹏计算平台是一个非常有潜力的产业。为了解决开发者在×86平台应用向鲲鹏平台移植的过程中遇到的一系列的痛点问题,华为推出了鲲鹏代码迁移工具(Porting Advisor),帮助开发者加速将×86环境下的应用迁移至鲲鹏平台。本文根据华为鲲鹏计算工具链项目组的工具化软件迁移经验总结了鲲鹏代码迁移工具的实际使用经验,期望能帮助开发者了解如何使用该工具,提高开发者的软件迁移效率。
1.2工具支持的功能特性
1.3支持源码类型
1.4迁移流程
2:实践项目
2.1 实战项目一:
开源软件smartdenovo-master迁移实战
2.1.1前提条件
A:服务器和操作系统运行正常。
B:PC端已安装SSH远程登陆工具
C:Porting Advisor已在准备好的×86平台环境和鲲鹏平台环境中完成安装并正常运行。
D:待迁移的相关软件包、源代码已准备就绪。
2.1.2迁移计划
A:利用Porting Advisor的源码迁移功能对获取到的smartdenovo源代码进行扫描,获取其so库依赖关系、可迁移性、迁移工作量等分析结果。
B:根据 Porting Advisor的源码迁移功能分析得到的smartdenovo依赖关系去准备对应的so库。
C:检查 martdenovo源代码的源代码分析报告,获取编译构建文件、.h/.c等源代码文件的修改建议,并根据修改建议进行修改。
D:用修改后的源代码进行编译,生成鲲鹏版本的 smartdenovo软件。
E:使用鲲鹏版本的martdenovo软件进行部署和简单的验证。
2.1.3操作步骤
2.2实战项目二:
开源软件dl_poly迁移实战
2.2.1前提条件
A:服务器和操作系统运行正常。
B:PC端已安装SSH远程登陆工具
C:Porting Advisor已在准备好的×86平台环境和鲲鹏平台环境中完成安装并正常运行。
D:待迁移的相关软件包、源代码已准备就绪。
2.2.2操作步骤
【总结】
本次软件迁移实战中,通过对软件迁移过程的完整模拟,覆盖了用户利用代码迁移工具对迁移过程进行前期分析、中期修改和后期编译、重构、验证的过程。在其它软件的迁移中,可以参考本实践的思路和操作过程进行操作。