编译ovirt-engine-wildfly
ovirt-engine-wildfly是架构依赖的,oVirt上并未直接提供aarch64的rpm包,需要自行编译。
编译wildfly-openssl源码
- 下载wildfly-openssl源码。
1 2 3 4 5
cd /opt/ovirt rm -rf wildfly-openssl git clone http://github.com/wildfly-security/wildfly-openssl.git cd wildfly-openssl git checkout -b 1.1.1.Final 1.1.1.Final
- 添加artifactory.ovirt.org域名解析。
1
echo "66.187.230.34 artifactory.ovirt.org" >> /etc/hosts
- 编译生成jar包。
1
mvn package -Dmaven.wagon.http.ssl.allowall=false -Dmaven.wagon.http.ssl.ignore.validity.dates=true -Dmaven.wagon.http.ssl.insecure=true -DskipTests=true -Denforcer.fail=false
编译得到的jar包和so在“./linux-aarch64/target”目录下。

此处的echo "66.187.230.34 artifactory.ovirt.org" >> /etc/hosts 作用是添加artifactory.ovirt.org域名解析,该IP地址(66.187.230.34)可能变化,建议添加前在本地PC上通过ping artifactory.ovirt.org获取实际IP地址进行替换。
编译activemq-artemis-native
- 安装编译依赖libaio。
1
yum install libaio-devel.aarch64 -y
- 下载源码。
1 2 3 4
cd /opt/ovirt git clone http://github.com/apache/activemq-artemis-native.git cd activemq-artemis-native/ git checkout -b 1.0.2 1.0.2
- 修改编译脚本scripts/compile-native.sh, 删除编译参数-DCMAKE_USER_C_FLAGS="-m32"。
1
sed -i 's/-m32//g' scripts/compile-native.sh
- 执行编译。
1
sh ./scripts/compile-native.sh
编译ovirt-engine-wildfly
- 安装chrpath依赖包。
1
yum install chrpath -y
- 下载并编译ovirt-engine-wildfly源码。
1 2 3 4 5 6
cd /opt/ovirt rm -rf ovirt-engine-wildfly git clone https://gerrit.ovirt.org/ovirt-engine-wildfly cd ovirt-engine-wildfly git reset --hard 32f1fa0a3c578faa1e4947ab6729d0d1369741cf sh automation/build-artifacts.sh
- 解压wildfly-19.1.0.Final.zip,文件夹中缺失aarch64相关的so文件,需把前两节编译出来的so文件拷贝到对应目录。
1 2 3
unzip wildfly-19.1.0.Final.zip cp /opt/ovirt/wildfly-openssl/linux-aarch64/target/classes/linux-aarch64/ /opt/ovirt/ovirt-engine-wildfly/wildfly-19.1.0.Final/modules/system/layers/base/org/wildfly/openssl/main/lib/ -rf cp /opt/ovirt/activemq-artemis-native/target/lib/linux-aarch64/ /opt/ovirt/ovirt-engine-wildfly/wildfly-19.1.0.Final/modules/system/layers/base/org/apache/activemq/artemis/journal/main/lib/ -rf
- 重新压缩成zip包并编译。
1 2 3 4
cd /opt/ovirt/ovirt-engine-wildfly mv wildfly-19.1.0.Final.zip wildfly-19.1.0.Final.zip.orig zip -r wildfly-19.1.0.Final.zip wildfly-19.1.0.Final sh automation/build-artifacts.sh
- 安装ovirt-engine-wildfly、ovirt-engine-wildfly-overlay rpm包。
1
rpm -ivh ./exported-artifacts/ovirt-engine-wildfly-19.1.0-1.el8.aarch64.rpm ./exported-artifacts/ovirt-engine-wildfly-overlay-19.1.0-1.el8.noarch.rpm
