rpmbuild -D 宏定义以及kmod-drbd84

centos7没有自带kmod-drbd84 rpm。

google并下载 drbd84-kmod-8.4.6-1.el7.elrepo.src.rpm,安装该rpm源码包,然后利用rpmbuild生成rpm。


# yum install kernel-devel

# rpmbuild -ba drbd84-kmod.spec
...
+ cd /root/rpmbuild/BUILD
+ cd drbd-8.4.4
+ KSRC=/usr/src/kernels/3.10.0-123.el7.x86_64
+ /usr/bin/make -j2 module KDIR=/usr/src/kernels/3.10.0-123.el7.x86_64
make: *** /usr/src/kernels/3.10.0-123.el7.x86_64: No such file or directory.  Stop.
    SORRY, kernel makefile not found.
    You need to tell me a correct KDIR,
    Or install the neccessary kernel source packages.
...

# uname -r
3.10.0-229.x86_64


显示内核版本不一致,需要指定。查看一下spec文件

drbd84-kmod.spec
  5 # If kversion isn't defined on the rpmbuild line, define it here.
  6 %{!?kversion: %define kversion 3.10.0-123.el7.%{_target_cpu}}

 52 %build
 53 KSRC=%{_usrsrc}/kernels/%{kversion}
 54 %{__make} %{?_smp_mflags} module KDIR="${KSRC}"


可见,只要定义正确的kversion宏定义,就可以找到正确的内核源码位置。执行

# rpmbuild -D 'kversion 3.10.0-229.el7.x86_64' -ba drbd84-kmod.spec


成功生成kmod-drbd84-8.4.6-1.el7.centos.x86_64.rpm。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值