---
title: 编译开源代码包
description: "在“/home/server”下新建临时adaptorlib目录编译libosa和libproxy。libosa部署在服务端，libproxy需要同时部署在服务端和客户端，根据客户端节点类型准备编译服务器类型。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2200SPC2/sds/kunpengglobalcache_06_0013.html
sourcePath: /source/zh/kunpengboostkithistory/2200SPC2/sds/kunpengglobalcache_06_0013.html
indexId: c5547ec8d6509f4effe02baafd0c32c5ebb11bd2c7c636dd40b67d04c3ca83a578
---
# 编译开源代码包

在“/home/server”下新建临时adaptorlib目录编译libosa和libproxy。libosa部署在服务端，libproxy需要同时部署在服务端和客户端，根据客户端节点类型准备编译服务器类型。

1. 新建“adaptorlib”目录。
  1 mkdir -p /home/server/adaptorlib

2. 获取源码置于“/home/server/adaptorlib”目录下。
  1 2 cd /home/server/adaptorlib git clone https://gitee.com/kunpengcompute/global-cache-adaptor.git

3. 编译adaptorlib。
  1 2 3 cd global-cache-adaptor export CPLUS_INCLUDE_PATH="$CPLUS_INCLUDE_PATH:/opt/gcache_adaptor_compile/third_part/inc/" sh build.sh

  编译adaptorlib之前，需确保已编译Ceph源码包：ceph-14.2.8.tar.gz，并安装闭源RPM包：boostkit-globalcache-ceph-adaptor-release-1.3.15.oe1.aarch64.rpm（ARM）或boostkit-globalcache-ceph-adaptor-release-1.3.15.oe1.x86_64.rpm (x86)。缺少boost头文件需要将/home/ceph-14.2.8/src/boost/boost文件夹拷贝至/usr/include下。其中X86编译机编译的so只能供x86服务器使用，ARM编译机编译的so只能供ARM服务器使用。

4. 新建“/home/server/adaptorlib/glz”目录

```
mkdir -p /home/server/adaptorlib/glz
```


5. 获取BoostKit-glz_1.0.2.zip(https://support.huawei.com/enterprise/zh/kunpeng-computing/kunpeng-boostkit-pid-253662285/software/255190635?idAbsPath=fixnode01|23710424|251364417|9856629|253662285)和zstd-1.4.5(https://github.com/facebook/zstd/tree/v1.4.5)源码置于“/home/server/adaptorlib/glz”目录下。

```
cd /home/server/adaptorlib/glz
chmod 700 BoostKit-glz_1.0.2.zip
unzip BoostKit-glz_1.0.2.zip
unzip zstd-1.4.5.zip
```


6. 获得的安装包和构建依赖项共同编译出动态库，以下为编译动态库实例（供参考），将“Makefile”文件下载至路径“/home/server/adaptorlib/glz”目录。
  1 2 3 wget https://github.com/kunpengcompute/kps/releases/download/glz/Makefile --no-check-certificate make cp libglz.so /home/server/adaptorlib/global-cache-adaptor/build/lib

  如有安全需求，请自行注意安全编译选项。

7. 打包adaptorlib，生成globalcache-adaptorlib-release-oe1.aarch64.tar.gz，后续用于服务端安装开源代码包
  1 2 cd /home/server/adaptorlib/global-cache-adaptor/package sh globalcache-adaptorlib_pack.sh
