鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

查看架构源码迁移报告

架构源码迁移支持对C/C++/Fortran/Go/解释型语言/汇编等源码文件进行检查分析,精准定位需迁移的代码并提供迁移指导,同时支持迁移编辑和一键代码替换功能。

前提条件

已成功完成任务分析。

不同的目标操作系统支持的SO库不一样,所以迁移报告会有差异。

查看迁移报告

  1. 在页面左侧,选择“源码迁移”,展开下拉列表即为历史报告。
  2. 在历史报告列表中,单击指定分析任务的报告名称,进入迁移报告界面,默认为“架构源码迁移报告”。
    图1 架构源码迁移报告
    表1 架构源码迁移报告参数说明

    参数

    说明

    扫描文件统计

    文件总数

    根据选择的源码类型和构建工具进行扫描,总共统计的扫描源码文件数。

    依赖文件统计

    文件总数

    源码包所依赖的与架构相关文件总数。

    可兼容

    通过使用鲲鹏镜像仓提供的文件包替换后,可兼容目标硬件平台,具体操作请参见“与架构相关的依赖文件”“处理建议”

    待确认

    需要用户自行处理以达到兼容目标硬件平台,具体操作请参见“与架构相关的依赖文件”“处理建议”

    源码文件统计

    需修改文件数

    需要修改的文件数。

    需修改代码行

    需要修改的代码行数。

    源码迁移人力

    显示预估的源码迁移人力,当“扫描参数设置”中“显示工作量评估结果”设置为“是”时展示。

    与架构相关的依赖文件

    显示与架构相关的依赖文件,请根据“处理建议”进行操作。

    需要迁移的源文件

    显示需要迁移的源文件总数和需要修改的代码行数,通过单击操作列“查看建议源码”可以快速进入对应的源码迁移建议页面。

    • 文件类型包括C/C++ Source File、Fortran、Makefile、Python、Go、Java、Scala、ASM File及Bazel,可通过筛选查看具体类型的文件。
    • 文件所在的路径根据Unicode编码排序,需修改的代码行根据行数排序。
  3. 准备依赖库。

    图2提供的依赖库信息可以看出,有2个依赖文件。

    图2 依赖库信息
    • 针对可兼容鲲鹏平台的动态库、静态库文件、软件包、可执行文件、JAR包等,用户可以直接单击处理建议中的“下载”,下载鲲鹏平台可用的文件,然后进行替换,或者下载鲲鹏版本源码,直接编译。对于一些未开源的依赖文件,工具无法提供下载URL,请自行获取后进行替换。
    • 针对待修改的文件,请先在鲲鹏平台上验证。若不兼容,请联系供应方获取鲲鹏兼容版本,或获取源码并编译成鲲鹏兼容版本,或使用其他方案替代。
    以上图libz.so.1依赖文件为例:
    1. 可通过以下命令查看服务器上是否已下载过此动态库。
      1
      rpm -qa | grep zlib
      
    2. 若未安装动态库,请单击“下载”获取动态库,并在服务器上安装;若已安装动态库,则可以跳过此步。
      1
      rpm -ivh zlib-1.2.11-20.oe1.aarch64.rpm
      

      显示信息如下:

      1
      2
      3
      Verifying...                          ################################# [100%]
      Preparing...                          ################################# [100%]
              file /usr/lib64/libz.so.1.2.11 from install of zlib-1.2.11-20.oe1.aarch64 conflicts with file from package zlib-1.2.11-17.oe1.aarch64
      
  4. “需要迁移的源码文件”的操作中直接单击“查看建议源码”可查看源码迁移建议。

    若用户需要在原始代码中进行修改操作,务必随时对编辑的源码进行保存,否则可能会因为会话超时而丢失修改的代码。

    图3 源码迁移建议
    表2 源码迁移建议参数说明

    参数

    说明

    文件列表

    分析的源码文件名称。

    原始源代码

    原始源代码。

    • 用户可以直接在原始源代码中进行修改,修改完之后,可单击右上角的保存,回退或取消。
    • 用户可以将鼠标置于有红色波浪线的代码上,在悬浮的提示中单击Quick Fix自动添加右侧的源码建议(可选择“在本文件中批量修改该类建议”对同类问题进行批量修改)。
    • 用户如使用快捷键进行源码操作,需注意因输入法或IDE环境导致的快捷键被占用问题。
    • 单击左侧文件列表中,即可下载用户所需要的源码文件。
    • 汇编不支持迁移修改后再次扫描;如果扫描,会导致分析结果不准确。