---
title: 编译bcache
description: "1. 确保环境使用CentOS-7-aarch64-Everything-1810.iso镜像安装。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2003/accel/kunpengaccel_ip_06_0006.html
sourcePath: /source/zh/kunpengboostkithistory/2003/accel/kunpengaccel_ip_06_0006.html
indexId: 76a01514897d141878af837f67715f7567d8d37afa81207f8569ff27ddbe7c0e73
---
# 编译bcache

#### 编译环境准备

1. 确保环境使用CentOS-7-aarch64-Everything-1810.iso镜像安装。
2. 确认操作系统版本。

```
uname -a
```


  操作系统显示版本如下所示。

```
Linux localhost.localdomain 4.14.0-115.10.1.el7a.aarch64 #1 SMP Thu Nov 26 14:15:20 CST 2020 aarch64 aarch64 aarch64 GNU/Linux
```


3. 确认GCC版本。

```
gcc -v
```


  建议使用GCC 4.8.5（CentOS 7.6默认配套版本）进行编译。

  GCC版本信息显示如下。

```
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/aarch64-redhat-linux/4.8.5/lto-wrapper
Target: aarch64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-aarch64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-aarch64-redhat-linux/cloog-install --enable-gnu-indirect-function --build=aarch64-redhat-linux
Thread model: posix
gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)
```


4. 确认内核头文件已安装。

```
ls /usr/src/kernels/$(uname -r)
```


  安装情况如下所示。

```
arch  block  certs  crypto  drivers  firmware  fs  include  init  ipc  Kconfig  kernel  lib  Makefile  mm  Module.symvers  net  samples  scripts  security  sound  System.map  tools  usr  virt
```


#### 源码编译

1. 获取智能预取bcache源码。
  下载链接：https://gitee.com/kunpengcompute/bcache(https://gitee.com/kunpengcompute/bcache)

2. 安装内核开发软件包。

```
yum install kernel-devel-4.14.0-115.el7a.0.1
```


3. 在“drivers/md/bcache”源码目录下，执行编译。

```
make -C /lib/modules/4.14.0-115.el7a.0.1.aarch64/build M=$(pwd)
```


4. 获取编译出来的目标文件：bcache.ko。
