mellanox RDMA驱动源码下载以及编译安装

本文详细介绍了如何从Mellanox官方网站下载OFED源码,并提供了安装配置流程。重点讲解了修改驱动源码的方法,包括解压.rpm文件、修改.c和.h文件,以及生成和安装修改后的驱动模块。同时,介绍了如何在测试环境中临时加入修改后的库路径,以便使用定制的驱动进行RDMA程序的测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 1、源码下载
在官网根据服务器版本找到对应的.tar文件或者src源码包。旧版本在archive version里

http://www.mellanox.com/page/software_overview_ib

推荐下载.tar文件包,里面包含了src源码

安装配置过程非常简单,如果版本号匹配且依赖关系正确,理论上是可以直接执行其中的./mlnxofedinstall来进行安装的,如果遇到报错,网上的教程有很多。

2、主要讲一下修改驱动源码并安装。(貌似没看到其他人整理,对于小白来说是个坑)

在/SRC/SRPM文件中,各个模块源码已经分文件打包成了.rpm包。通过一下指令进行解压成.tar包,并进一步解压成普通目录

sudo rpm2cpio filename.rpm | sudo cpio -idv
sudo tar -zxvf filename.tar

进入该目录,根据你的功能需求修改其中的.c,.h文件等。之后在这个目录执行(此目录中仅有一个.config文件,据此生成makefile 和install文件)

sudo ./config
sudo make
sudo make install

就会在/usr/local/lib下生成修改的对应模块的.o文件,注意这个.o文件跟之前用./mlnxofedinstall生成的整套的驱动设备是冲突的,通常编写程序依旧会使用./mlnxofedinstall生成的驱动,因为默认环境变量中不会查询/usr/local/lib库。

为了测试修改的驱动功能,可以在测试程序的目录下输入

export LD_LIBRARY_PATH=/usr/local/lib:LD_LIBRARY_PATH

将/usr/local/lib库路径临时加到当前目录环境变量中(永久修改方法百度即可),之后在本目录下编译运行的RDMA程序则会使用(修改的模块+未修改的其他模块)驱动来运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值