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

创建分析任务

源码迁移功能分析用户C/C++/ASM/Fortran/Go/解释型语言软件的可迁移性。

前提条件

已成功登录鲲鹏DevKit。

  • 任务运行过程中会执行上传源码包中构建文件的构建命令,请确保上传的内容为需要进行分析检查的内容且不存在安全问题,避免影响服务器正常运行。
  • “/opt/DevKit”为工具默认安装目录,下文以此默认路径为例,请根据实际情况替换。
  • 以项目工程为单位进行源码扫描,可以提升扫描结果准确性。
  • 源码迁移功能在Web界面中需要手动上传文件或压缩包,在插件工具中支持扫描本地工程。

操作步骤

  1. 在页面左侧,选择“源码迁移”单击“”进入创建分析任务区。
  2. 在创建分析任务区对以下参数进行配置。
    图1 源码迁移
    表1 源码迁移参数说明

    参数

    说明

    任务名称

    源码迁移任务名称,工具默认会自动生成任务名称,也可根据实际情况进行自定义修改。

    源码文件存放路径

    本地项目工程或源码文件存放路径。

    需要填写相对路径,以项目工程为单位进行源码扫描,可以提升扫描结果准确性。

    可以通过以下两种方式实现上传:

    • 单击“上传”按钮上传压缩包(上传过程中自动解压)或文件夹。
    • 先将源码文件手动上传到服务器上本工具的指定路径下(例如:/opt/DevKit/workspace/devadmin/porting/sourcecode/),给DevKit用户开读写和执行权限,再单击填写框选择下拉框中的源码路径即可,也可以手动填写源码路径。
      说明:
      • 手动上传软件包时,需先检查是否存在上传目录,若不存在,则需创建工具指定路径,并给devkit用户开通读写和执行权限。
      • 在扫描含全汇编的源码时,用户需要先在源码文件的根目录下编译生成make.log,然后再打包上传。例如:用户要扫描含纯汇编的源码example,需要先在/opt/DevKit/workspace/用户名/porting/sourcecode/example/下生成make.log,再填写相对路径example。
    在“上传”下拉菜单中可选择:
    • 压缩包:选择上传源码文件压缩包,工具会自动解压。
      说明:
      • 支持上传tar,tar.bz,tar.bz2,tar.gz,tar.xz,tbz,tbz2,tgz,txz,zip格式的压缩包,只允许同时上传一个压缩包。源码文件压缩包小于或等于1GB,解压后小于或等于剩余磁盘空间的一半。
      • 工具会自动将压缩包解压至和压缩包同名的文件夹。例如上传的压缩包为test.zip,工具会自动解压至test文件夹。
    • 文件夹:选择上传本地解压的源码文件夹。
      说明:

      只允许同时上传一个文件夹,文件夹小于或等于剩余磁盘空间的一半。

    源码类型

    选择源码类型。可选择:

    • C/C++/ASM
    • Fortran
    • Go
    • 解释型语言

      目前支持的解释型语言包括Python、Java和Scala。

    目标操作系统

    选择目标系统版本。可选择:

    • BC-Linux 7.6/7.7
    • CentOS 7.4/7.5/7.6/7.7/8.0/8.1/8.2
    • Deepin V15.2
    • Debian 10
    • EulerOS 2.8
    • iSoft 5.1
    • Kylin V10 SP1
    • Kylin V10 SP2
    • Kylin V10 SP3
    • KylinSecOS 3.4/3.5.2
    • LinxOS 6.0.90
    • NeoKylin V7U5
    • NeoKylin V7U6
    • openEuler 20.03
    • openEuler 20.03 SP1
    • openEuler 20.03 SP2
    • openEuler 20.03 SP3
    • openEuler 22.03
    • openEuler 22.03 SP1/SP2
    • SUSE SLES 15.1
    • Ubuntu 18.04.x
    • Ubuntu 20.04.x
    • UOS 20 SP1
    • uosEuler 20
    • UOS20-1020e
    • UOS20-1050e
    • 更多
    说明:

    点击“更多”后,根据页面上的步骤升级依赖字典,然后查看更新后的操作系统列表。

    目标系统内核版本

    目标操作系统对应的内核版本。

    • BC-Linux 7.6支持4.19.25
    • BC-Linux 7.7支持4.19.25
    • CentOS 7.4支持4.11.0
    • CentOS 7.5支持4.14.0
    • CentOS 7.6支持4.14.0
    • CentOS 7.7支持4.18.0
    • CentOS 8.0支持4.18.0
    • CentOS 8.1支持4.18.0
    • CentOS 8.2支持4.18.0
    • Deepin V15.2支持4.19.34
    • Debian 10支持4.14.0
    • EulerOS 2.8支持4.19.36
    • iSoft 5.1支持4.19.90
    • Kylin V10 SP1支持4.19.90
    • Kylin V10 SP2支持4.19.90
    • Kylin V10 SP3支持4.19.90
    • KylinSecOS 3.4 支持4.19.90
    • KylinSecOS 3.5.2 支持5.10.0
    • LinxOS 6.0.90支持4.19.0
    • NeoKylin V7U5支持4.14.0
    • NeoKylin V7U6支持4.14.0
    • openEuler 20.03支持4.19.90
    • openEuler 20.03 SP1支持4.19.90
    • openEuler 20.03 SP2支持4.19.90
    • openEuler 20.03 SP3支持4.19.90
    • openEuler 22.03 支持5.10.0
    • openEuler 22.03 SP1支持5.10.0
    • openEuler 22.03 SP2支持5.10.0
    • SUSE SLES 15.1支持4.12.14
    • Ubuntu 18.04.x支持4.15.0
    • Ubuntu 20.04.x支持5.4.0
    • UOS 20 SP1支持4.19.0
    • uosEuler 20支持4.19.90
    • UOS20-1020e支持4.19.90
    • UOS20-1050e支持4.19.90

    编译器版本

    选择编译器版本。

    目标系统默认的编译器版本:

    • BC-Linux 7.6默认为GCC 4.8.5
    • BC-Linux 7.7默认为GCC 4.8.5
    • CentOS 7.4默认为GCC 4.8.5
    • CentOS 7.5默认为GCC 4.8.5
    • CentOS 7.6默认为GCC 4.8.5
    • CentOS 7.7默认为GCC 4.8.5
    • CentOS 8.0默认为GCC 8.2.0
    • CentOS 8.1默认为GCC 8.3.0
    • CentOS 8.2默认为GCC 8.3.0
    • Deepin 15.2默认为GCC 6.3.0
    • Debian 10默认为GCC 8.3.0
    • EulerOS 2.8默认为GCC 7.3.0
    • iSoft 5.1默认为GCC 7.3.0
    • Kylin V10 SP1默认为GCC 7.3.0
    • Kylin V10 SP2默认为GCC 7.3.0
    • Kylin V10 SP3默认为GCC 7.3.0
    • KylinSecOS 3.4默认为GCC 7.3.0
    • KylinSecOS 3.5.2默认为GCC 10.3.0
    • LinxOS 6.0.90默认为GCC 6.3.0
    • NeoKylin V7U5默认为GCC 4.8.5
    • NeoKylin V7U6默认为GCC 4.8.5
    • openEuler 20.03默认为BiSheng Compiler 2.5.0.1
    • openEuler 20.03 SP1默认为GCC 7.3.0
    • openEuler 20.03 SP2默认为GCC 7.3.0
    • openEuler 20.03 SP3默认为GCC 7.3.0
    • openEuler 22.03 默认为BiSheng Compiler 2.5.0.1
    • openEuler 22.03 SP1默认为GCC 10.3.0
    • openEuler 22.03 SP2默认为GCC 10.3.0
    • SUSE SLES 15.1默认为GCC 7.4.0
    • Ubuntu 18.04.x默认为GCC 7.3.0
    • Ubuntu 20.04.x默认为GCC 9.3.0
    • UOS 20 SP1默认为GCC 8.3.0
    • UOS20-1020e默认为GCC 7.3.0
    • UOS20-1050e默认为GCC 7.3.0
    • uosEuler 20默认为GCC 7.3.0

    C/C++/ASM和Go可选择:

    • BiSheng Compiler 2.1.0/2.3.0/2.4.0/2.5.0/2.5.0.1
    • GCC 4.8.5/4.9.3/5.1.0/5.2.0/5.3.0/5.4.0/5.5.0/6.1.0/6.2.0/6.3.0/6.4.0/6.5.0/7.1.0/7.2.0/7.3.0/7.4.0/8.1.0/8.2.0/8.3.0/9.1.0/9.2.0/9.3.0/10.1.0/10.2.0/10.3.0
      说明:
      • C/C++/ASM与GO语言共用编译器版本。
      • C/C++/ASM和Fortran源码类型都选择的情况下,BiSheng Compiler版本与FLANG版本之间相互绑定。

    Fortran可选择:

    • GFORTRAN 7/8/9
    • FLANG 2.1.0/2.3.0/2.4.0/2.5.0/2.5.0.1

    构建工具

    选择构建工具。可选择:

    • make
    • cmake
    • automake
    • go
      说明:

      “go”选项只在“源码类型”仅勾选“Go”或同时勾选“Go”“解释型语言”时可用。

    编译命令

    源码编译命令。

    编译命令需根据构建工具配置文件确定,具体请参考通过构建工具配置文件识别编译命令

    自定义x86宏

    自定义x86平台宏。

    输入自定义宏时,多个宏之间请用“;”进行分割。

    说明:

    如果用户所处的环境Glibc版本低于2.28,则无法使用最新的汇编文件自动翻译功能,如有需要,请单击页面上的“查看安装指导”,按照指示进行操作。

  3. 单击“开始分析”,生成分析报告。

    弹窗页面显示任务分析进度,分析完成后,单击“查看报告”进入“迁移报告”界面。

    • 用户可在任务进行过程中单击关闭,取消任务。
    • 支持多个用户同时创建分析任务。
    • 任务分析失败或评估结果为无需迁移时会产生空白报告。
    • 解压后的源码文件路径中仅包含如下关键字,或关键字前带“_”,或关键字后带“_”,或关键字后为文件后缀时,工具默认该文件无需迁移,不进行扫描。可在porting.log中查看未进行扫描的文件。

      关键字:PPC,PPC64,s390,s390x,powerpc,alpha,MIPS,itanium,WIN64,WIN32,BOOST_COMP_MSVC,arm,aarch64,sparc,sparc64

    • 分析结果可能因环境不同而产生差异,属于正常情况。
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词