特性操作
单击“源码迁移”后面的,打开如图1所示界面,参数描述如表1所示。配置参数后单击“开始分析”。

以下内容中的“/opt/portadv”为服务端默认安装路径,如果为自定义安装,请使用对应的自定义安装路径替换。
参数 |
说明 |
---|---|
源码文件存放路径 |
需要填写相对路径,可以通过以下两种方式实现:
在“上传”下拉菜单中可选择:
|
源码类型 |
选择源码类型。可选择: |
编译器版本 |
选择编译器版本。 目标系统默认的编译器版本:
C/C++/ASM和Go可选择:
Fortran可选择:
|
构建工具 |
选择构建工具。可选择:
|
编译命令 |
源码编译命令。 编译命令需根据构建工具配置文件确定,具体请参考构建工具配置文件识别编译命令。 |
目标操作系统 |
选择目标系统版本。可选择:
说明:
点击“更多”后,根据页面上的步骤升级依赖字典,然后查看更新后的操作系统列表。 |
目标系统内核版本 |
目标操作系统对应的内核版本。
|
说明:
如果用户所处的环境Glibc版本低于2.28,则无法使用最新的汇编文件自动翻译功能,如有需要,请单击页面上的“查看安装指导”,按照指示进行操作。 |
分析完成后,自动跳转至分析报告详情界面,如图2所示。

- 也可以在分析报告的列表中,单击指定分析任务的报告名称查看分析报告。
- 分析报告的名称为生成报告的时间。
- 任务分析失败或评估结果为无需迁移时会产生空白报告。
- 分析结果可能因环境不同而产生差异,属于正常情况。

要显示页面右上角的“源码迁移人力”,需在“扫描参数配置”页面将“显示工作量评估结果”选为“是”。
参数 |
说明 |
---|---|
配置信息 |
显示源码文件存放路径、是否执行源码增强检查、编译器版本、构建工具、编译命令、目标操作系统和目标系统内核版本。 |
与架构相关的依赖库文件 |
显示SO文件。
|
需要迁移的源文件 |
显示需要迁移的源文件总数和需要修改的代码行数,通过单击操作列“查看建议源码”可以快速进入对应的源码迁移建议页面。 文件类型包括C/C++ Source File,Fortran,makefile,Python,Go,Java,Scala以及ASM File,可通过筛选查看具体类型的文件。 文件所在的路径根据Unicode编码排序,需修改的代码行根据行数排序。 |
单击“下载报告 (.csv)”,下载的分析报告如图3所示,参数描述如表3所示。
参数 |
说明 |
|
---|---|---|
Scanned time |
扫描时间。 |
|
Configuration |
Source Code File Path |
扫描的源码文件存放路径。 |
Compiler Version |
编译器版本。 |
|
Target OS |
目标操作系统。 |
|
Target OS Kernel Version |
内核版本。 |
|
Build Tool |
构建工具。 |
|
Software make command |
编译命令。 |
|
Interpreted(Python,Java,Scala) |
分析对象是否包括解释型语言文件。
|
|
Go |
分析对象是否包括Go语言文件。
|
|
Summary |
Compatible: x, To be Verified: x, Total Dependencies: x |
显示兼容鲲鹏平台的文件数,待验证文件数,依赖库文件总数。 |
Source Need ported |
源码是否需要迁移。
|
|
Scanned xx C/C++/Fortran files, xx Makefile/CMakeLists.txt/Automake related files, total xx files need to be ported. |
显示需要迁移的C/C++/Fortran文件和Makefile/CMakeLists.txt/Automake related文件总数以及文件个数。 |
|
Total xx lines C/C++/Makefile/CMakeLists.txt/Automake code and xx lines embedding ASM code need to be ported. |
显示源码总行数以及需要迁移的内联汇编代码行数。 |
|
Scanned xx pure assembly files, xx pure assembly files to be ported. |
显示全汇编文件总数以及需要迁移的汇编文件个数和汇编代码行数。 |
|
Scanned x Go files, total x Go files 28 lines need to be migrated. |
显示Go文件总数一级需要迁移的Go文件个数和代码行数。 |
|
Scanned xx python files, total xx files xx lines need to be ported. |
显示Python文件总数以及需要迁移的Python文件个数和Python代码行数。 |
|
Scanned xx java files, total xx files xx lines need to be ported. |
显示Java文件总数以及需要迁移的Java文件个数和Java代码行数。 |
|
Scanned xx scala files, total xx files xx lines need to be ported. |
显示Scala文件总数以及需要迁移的Scala文件个数和Scala代码行数。 |
|
Estimated transplant workload: xx person/months.(C/C++/Fortran/Go, 500 Line/PM; ASM, 250Line/PM) |
显示源码迁移预估人力(x/人月)。 预估标准:1人月迁移工作量=500行C/C++/Fortran/Go源代码,或250行汇编代码。 |
|
Architecture-related Dependencies |
显示依赖库文件扫描的详细信息:
|
|
Source files scan details are as follows: |
显示源文件分析报告的详细信息: filename:扫描文件全路径。 filetype:扫描文件的类型。 line number:函数在文件中的行号。 rows:函数在文件中的总行数。 category:关键字所属类型。 keyword:关键字名称。 suggestion:迁移建议或者提示建议。 description:关键字用法描述。 |
在“迁移报告”的操作中直接单击“查看建议源码”,可以查看源码迁移建议,如图图4所示。

- 用户可以将鼠标悬停置于有红色波浪线的代码上,参考修改建议修改源码。
- 用户可以将光标置于有红色波浪线的代码上,使用快捷键“ctrl+f10”修改。
