Ubuntu 22.04安装DPDK后无法执行dpdk-devbind --status的问题
解决Ubuntu 22.04下DPDK安装后
dpdk-devbind找不到的问题 核心原因
你通过meson+ninja安装DPDK后,dpdk-devbind这类工具脚本默认安装在非PATH目录下,系统无法直接识别;另外Ubuntu 22.04作为Debian系发行版,64位库路径本身就是/usr/local/lib/x86_64-linux-gnu,而非/usr/local/lib64,这属于正常情况,无需调整。
解决步骤
1. 定位dpdk-devbind脚本位置
先找到脚本的具体路径:
find /usr/local -name dpdk-devbind.py
通常会返回路径:/usr/local/share/dpdk/scripts/dpdk-devbind.py(新版本DPDK使用Python脚本,旧版本为Shell脚本)。
2. 让系统识别该命令
- 临时使用:直接执行完整路径
sudo /usr/local/share/dpdk/scripts/dpdk-devbind.py --status
- 永久生效:
- 将脚本所在目录加入系统PATH,编辑
~/.bashrc文件:
echo 'export PATH=$PATH:/usr/local/share/dpdk/scripts' >> ~/.bashrc- 让配置立即生效:
source ~/.bashrc- (可选)创建软链接简化命令:
之后直接执行sudo ln -s /usr/local/share/dpdk/scripts/dpdk-devbind.py /usr/local/bin/dpdk-devbinddpdk-devbind --status即可。 - 将脚本所在目录加入系统PATH,编辑
3. 配置DPDK环境变量(推荐)
为了后续编译运行DPDK程序更顺畅,添加必要的环境变量到~/.bashrc:
echo 'export RTE_SDK=/usr/local/share/dpdk' >> ~/.bashrc echo 'export RTE_TARGET=x86_64-native-linux-gcc' >> ~/.bashrc echo 'export LD_LIBRARY_PATH=/usr/local/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH' >> ~/.bashrc source ~/.bashrc
4. 验证安装结果
执行以下命令确认配置生效:
dpdk-devbind --status pkg-config --modversion libdpdk
内容的提问来源于stack exchange,提问作者intrigued_66
相关产品推荐
相关产品推荐

