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

环境准备

硬件环境

编译机所使用的硬件环境如表1所示:

表1 编译机环境硬件推荐配置

项目

要求

处理器

鲲鹏处理器

内存大小

32GB以上

硬盘

480GB以上

软件环境

编译机所使用到的软件环境版本如下表2 编译机环境软件推荐配置所示:

表2 编译机环境软件推荐配置

项目

软件版本

OS

openEuler-20.03-LTS-SP1

JDK

OpenJDK 1.8.0_282

Maven

3.6.3

Scala

2.12.11

GCC

7.3.0

CMake

3.16.5

安装JDK

  1. 下载JDK安装包并解压至安装目录。
    1
    2
    wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u282-b08/OpenJDK8U-jdk_aarch64_linux_hotspot_jdk8u282-b08.tar.gz
    tar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_jdk8u282-b08.tar.gz -C /usr/local
    
  2. 配置JDK环境变量。
    1
    vim /etc/profile
    

    在profile文件中添加JDK的PATH。

    1
    2
    export JAVA_HOME=/usr/local/jdk8u282-b08
    export PATH=$JAVA_HOME/bin:${PATH}
    
  3. 使环境变量生效。
    1
    source /etc/profile
    
  4. 查看JDK版本。
    1
    java -version
    

安装Maven

  1. 下载并安装到指定目录(此处以指定“/opt/tools/installed”目录为例)。
    1
    2
    3
    wget https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
    tar -zxf apache-maven-3.6.3-bin.tar.gz
    mv apache-maven-3.6.3 /opt/tools/installed/
    
  2. 修改Maven环境变量。
    1
    vim /etc/profile
    
    “/etc/profile”文件末尾增加下面代码。
    1
    2
    export MAVEN_HOME=/opt/tools/installed/apache-maven-3.6.3
    export PATH=$MAVEN_HOME/bin:$PATH
    
  3. 使修改的环境变量生效。
    1
    source /etc/profile
    
  4. 检测配置是否生效。
    1
    mvn -v
    

  5. 修改Maven配置文件中的:本地仓路径、远程仓等。

    配置文件路径:“/opt/tools/installed/apache-maven-3.6.3/conf/settings.xml”

    本地仓库地址默认在“~/.m2/”目录下,如果想修改成指定目录,则修改localRepository标签,没有特殊需求,可不必修改该参数。

    远程仓库配置(修改成自己搭建的Maven仓库,如果没有,可以按照下面示例配置),在<mirrors>标签内添加以下内容:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
      <mirrors>
          <id>mirrors.huaweicloud.com</id>
          <url>https://mirrors.huaweicloud.com/kunpeng/maven</url>
          <name>mirrors huaweicloud com</name>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </mirrors>
      <mirrors>
          <id>repository.huaweicloud.com</id>
          <url>https://mirrors.huaweicloud.com/repository/maven</url>
          <name>repository huaweicloud com</name>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
       </mirrors>
    

    有代理情况下,需要在settings.xml配置文件中添加代理配置,具体内容如下:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    <proxies>
      <proxy>
        <id>optional</id>
        <active>true</active>
        <protocol>http</protocol>
        <username>用户名</username>
        <password>密码</password>
        <host>代理服务器网址</host>
        <port>代理服务器端口</port>
        <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
      </proxy>
    </proxies>
    

使用maven构建时建议使用本地maven安装的“mvn”而非“build/mvn”,因为后者会zinc服务的运行,可能导致构建机器信息的暴露。

安装GCC-7.3.0

  1. 下载并安装到指定目录(此处以指定“/opt/tools/installed”目录为例)。
    cd /opt/tools/installed/
  2. 下载GCC-7.3.0源码。
    wget https://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz
  3. 解压源码。
    tar -xf gcc-7.3.0.tar.gz
  4. 进入源码目录。
    cd gcc-7.3.0
  5. 安装bzip2。
    yum install -y bzip2
  6. 下载依赖。
    ./contrib/download_prerequisites

    请保持网络通畅。如下载失败,可以尝试手动下载。

    wget http://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2 
    wget http://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.4.tar.bz2 
    wget http://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz 
    wget http://gcc.gnu.org/pub/gcc/infrastructure/isl-0.16.1.tar.bz2

    在手动下载完成后重新运行脚本。

    ./contrib/download_prerequisites
  7. 编辑配置。
    ./configure --enable-languages=c,c++ --disable-multilib --with-system-zlib --prefix=/usr/local/gcc7.3.0
  8. 执行编译,编译成功之后执行安装。
    make -j15
    make install
  9. 修改/etc/profile配置环境变量。
    vim /etc/profile
  10. 在最后一行添加如下命令。
    export LD_LIBRARY_PATH=/usr/local/gcc7.3.0/lib64:${LD_LIBRARY_PATH}
    export CC=/usr/local/gcc7.3.0/bin/gcc
    export CXX=/usr/local/gcc7.3.0/bin/g++
  11. 按ESC退出编辑模式,并保存修改。
    :wq
  12. 使环境变量生效。
    source /etc/profile
  13. 验证安装成果。
    gcc -v

    g++ -v

    安装路径和前面的配置有关,主要关注版本号即可。