编译和部署UCX开源软件包,主要包括编译并构建出编译Ceph时需要依赖的UCX RPM包。
- 获取UCX开源软件包。
获取路径请参见表2。
- 定义RPM包编译路径。
- 打开/root/.rpmmacros文件。
- 按“i”进入编辑模式,将%_topdir路径设置为编译RPM包的路径(本例中以新建路径“/root/rpmbuild”为例),并将其他行的内容全部注释掉。
- 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
- 创建rpmbuild下的构建目录。
- 安装UCX RPM包。
|
rpm -ivh ucx-1.14.1-1.el7.src.rpm
|
- 为了解决UCX在容器中部署存在的报错问题,需要修改一行代码。参考下方的代码完成修改。
|
cd /root/rpmbuild/SOURCES/
tar -zxvf ucx-1.14.1.tar.gz
vim ucx-1.14.1/src/ucs/sys/sys.c
|
在1560行新增如下内容。
对该文件进行打包。
|
rm -rf ucx-1.14.1.tar.gz
tar zcvf ucx-1.14.1.tar.gz ucx-1.14.1
|

- 编译并构建RPM包。在RPM编译路径下,编译并构建ucx.spec文件,生成RPM包。
|
cd /root/rpmbuild/SPECS
rpmbuild -bb ucx.spec
|
编译完成后在“/root/rpmbuild/RPMS/aarch64”目录会生成如下图所示的8个RPM包。

- 取出RPM包并安装。
|
mkdir -p /home/local_rpm/
cp /root/rpmbuild/RPMS/aarch64/ucx* /home/local_rpm/
cd /home/local_rpm/
|
|
rpm -ivh ucx-1.14.1-1.aarch64.rpm
rpm -ivh ucx-cma-1.14.1-1.aarch64.rpm
rpm -ivh ucx-debuginfo-1.14.1-1.aarch64.rpm
rpm -ivh ucx-debugsource-1.14.1-1.aarch64.rpm
rpm -ivh ucx-devel-1.14.1-1.aarch64.rpm
rpm -ivh ucx-ib-1.14.1-1.aarch64.rpm
rpm -ivh ucx-rdmacm-1.14.1-1.aarch64.rpm
rpm -ivh ucx-static-1.14.1-1.aarch64.rpm
|