dpdk编译-meson版
1 依赖python3的elftools,没有的话可以这样装
1 | python3 -m pip install pyelftools |
2 在dpdk根目录,使用命令
meson setup -Dprefix=/home/tong/Code/dpdk-21.11.4/dest/ -Ddefault_library=static -Dprefer_static=true -Ddisable_drivers=net/mlx4 build
-Dprefix指明install的时候安装到哪里。
build时目录名。指定的编译目录
输入命令meson configure能查看所有的配置项。参数与含义。
3 清除编译配置,重新编译
meson setup --wipe build
或者直接把‘build’目录删除。
4 正式编译
先进入build目录,然后执行ninja
cd build
ninja
5 安装
还是在build目录下面
meson install
交付就安装到了,$prefix 指定的位置。没指的话,就在/usr/local/下面
6 APPmakefile
app可以用meson,也可以用makefile。下面用makefile,makefile用了pkg-config。
例子:https://elixir.bootlin.com/dpdk/v21.11.5/source/examples/l2fwd/Makefile
重点是这三行
PKGCONF ?= pkg-config CFLAGS += -O3 $(shell $(PKGCONF) --cflags libdpdk) LDFLAGS_SHARED = $(shell $(PKGCONF) --libs libdpdk) LDFLAGS_STATIC = $(shell $(PKGCONF) --static --libs libdpdk)
7 指定目录
我们这没有系统目录,所以pkg-config要指以下目录。ldconfig也需要。
7.1 通过环境变量指一下pkt-config
export PKG_CONFIG_PATH=/home/tong/Code/dpdk-21.11.4/dest/lib64/pkgconfig/
7.2 ldconfig
略
8 app编译
正常make
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
2016-11-27 [daily][archlinux][fonts] 在linux下管理字体