编译DPDK 17.04版本遇cannot find -lnuma错误,求解决方案
解决DPDK编译时
cannot find -lnuma错误 这个错误的根源很清晰——链接器在构建testpmd组件时找不到libnuma库,本质是你的系统缺少NUMA(Non-Uniform Memory Access)机制对应的开发包。下面是不同Linux发行版的具体解决步骤:
Debian/Ubuntu 系列系统
直接通过包管理器安装NUMA开发库:
sudo apt-get install libnuma-dev
RHEL/CentOS 系列系统
根据系统版本选择对应的命令安装:
# CentOS 7 及更早版本 sudo yum install numactl-devel # CentOS 8+ / RHEL 8+ 版本 sudo dnf install numactl-devel
SUSE/openSUSE 系列系统
使用zypper工具安装:
sudo zypper install libnuma-devel
安装完成后,回到你的DPDK目录,清理之前的编译残留后重新执行编译安装命令:
make clean make install T=x86_64-native-linuxapp-gcc # 请根据你的目标硬件环境调整参数
如果你的系统无法通过包管理器获取合适版本的NUMA库(不推荐这种场景),可以手动编译源码安装:
- 下载NUMA官方源码包并解压
- 执行编译安装流程:
tar -xf numa-*.tar.gz cd numa-* ./configure make sudo make install
安装完成后执行sudo ldconfig让系统识别新安装的库路径。
内容的提问来源于stack exchange,提问作者krishnapal singh
相关产品推荐
相关产品推荐

