Configuring the Compilation Environment
Installing Dependencies
- Mount the OS image.
1mount YOUR_OS.iso /media -o loop
Replace YOUR_OS.iso with the actual iso package name.
- Back up the repo file and clear the /etc/yum.repos.d/ directory.
1 2
/etc/yum.repos.d-bakcp -r /etc/yum.repos.d rm /etc/yum.repos.d/*
Ensure that all repo files have been backed up. Enter y on the rm deletion page to delete the files.
- Configure a local Yum source.
- Open the /etc/yum.repos.d/Local.repo file.
1vi /etc/yum.repos.d/Local.repo - Press i to enter the insert mode and add the following content to the file:
1 2 3 4 5
[Local] name=Local baseurl=file:///media/ enabled=1 gpgcheck=0
- Press Esc, type :wq!, and press Enter to save the file and exit.
- Open the /etc/yum.repos.d/Local.repo file.
- Make the Yum source configuration take effect.
1 2
yum clean all yum makecache
- Use the Yum source to install GCC related software.
1yum -y install gcc gcc-c++ gcc-gfortran.aarch64 libgcc.aarch64 make cmake libtool autoconf automake ant wget git vim
Installing OpenJDK
- Download and decompress the installation package to a directory (for example, /opt/tools/installed).
1 2 3 4
wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u252-b09/OpenJDK8U-jdk_aarch64_linux_hotspot_8u252b09.tar.gz tar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_8u252b09.tar.gz mkdir -p /opt/tools/installed/ mv jdk8u252-b09 /opt/tools/installed/
- Configure Java environment variables.
- Edit the /etc/profile file.
1vi /etc/profile - Press i to enter the insert mode and add the following content to the end of the file:
1 2
export JAVA_HOME=/opt/tools/installed/jdk8u252-b09 export PATH=$JAVA_HOME/bin:$PATH
- Press Esc, type :wq!, and press Enter to save the file and exit.
- Edit the /etc/profile file.
- Make the environment variables take effect.
1source /etc/profile
- Check whether OpenJDK is successfully installed.
1java -versionIf the OpenJDK version is displayed in the command output, the installation is successful.
1 2 3
openjdk version "1.8.0_252" OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_252-b09) OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.252-b09, mixed mode)
Installing Maven
- Download and install the installation package to a directory (for example, /opt/tools/installed).
1 2 3
wget https://archive.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz tar -zxf apache-maven-3.5.4-bin.tar.gz mv apache-maven-3.5.4 /opt/tools/installed/
- Modify the Maven environment variables.
- Edit the /etc/profile file.
1vi /etc/profile - Press i to enter the insert mode and add the following content to the end of the file:
1 2
export MAVEN_HOME=/opt/tools/installed/apache-maven-3.5.4 export PATH=$MAVEN_HOME/bin:$PATH
- Press Esc, type :wq!, and press Enter to save the file and exit.
- Edit the /etc/profile file.
- Make the environment variables take effect.
1source /etc/profile
- Check whether Maven is successfully installed.
1mvn -vThe installation is successful if information similar to the following is displayed:
1 2 3 4 5
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00) Maven home: /opt/tools/installed/apache-maven-3.5.4 Java version: 1.8.0_252, vendor: AdoptOpenJDK, runtime: /opt/tools/installed/jdk8u252-b09/jre Default locale: en_US, platform encoding: UTF-8 0S name: "linux", version: "4.14.0-115.el7a.0.1.aarch64", arch: "aarch64", family: "unix"
- Modify the local repository path and remote repository in the Maven configuration file.
- Open the configuration file.
vi /opt/tools/installed/apache-maven-3.5.4/conf/settings.xml
The default local repository directory is ~/.m2/. If you want to change the directory to a specified one, modify the localRepository tag. You do not need to modify this parameter unless otherwise specified.
- Press i to enter the insert mode. Add the following content to the <mirrors> tag to configure the remote repository (change the repository to the Maven repository that you have built. If the Maven repository does not exist, configure it based on the following example):
1 2 3 4 5 6
<mirror> <id>huaweimaven</id> <name>huawei maven</name> <url>https://mirrors.huaweicloud.com/repository/maven/</url> <mirrorOf>central</mirrorOf> </mirror>
- Optional: If the compilation environment cannot access the Internet, add the following proxy configuration to 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</username> <password>Password</password> <host>Proxy server URL</host> <port>Proxy server port</port> <nonProxyHosts>local.net|some.host.com</nonProxyHosts> </proxy> </proxies>
- Press Esc, type :wq!, and press Enter to save the file and exit.
- Open the configuration file.
Installing sbt
- Download sbt-0.13.15 to a specified directory (for example, /opt/tools/installed) and decompress it.
1 2 3
wget https://github.com/sbt/sbt/releases/download/v0.13.15/sbt-0.13.15.tgz tar -zxf sbt-0.13.15.tgz mv sbt /opt/tools/installed
- Create the .sbt folder in the root directory of the current user and copy the repositories file to the .sbt folder.
The repositories section defines the sequence in which the Maven repositories are used during sbt compilation.
1 2
mkdir ~/.sbt cp repositories ~/.sbt
The content of the repositories file is as follows:
1 2 3 4 5 6
[repositories] local kunpeng-maven: https://mirrors.huaweicloud.com/kunpeng/maven/ huawei-maven: https://mirrors.huaweicloud.com/repository/maven/ sbt-releases-repo: https://repo.typesafe.com/typesafe/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext] sbt-plugins-repo: https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
- Configure the SBT_HOME environment variable.
- Open the /etc/profile file.
1vi /etc/profile - Press i to enter the insert mode and add the following content to the profile file:
1 2
export SBT_HOME=/opt/tools/installed/sbt export PATH=${SBT_HOME}/bin:${PATH}
- Press Esc, type :wq!, and press Enter to save the file and exit.
- Open the /etc/profile file.
- Make the environment variable take effect.
1source /etc/profile
Parent topic: Incremental-compiler Porting Guide (CentOS 7.6)