VPP 编译记录

news/2024/11/8 9:48:20/

目录

虚拟机安装

VPP编译

下载一些工具

下载vpp源码

编译

首次构建

非首次直接编译


虚拟机安装

由于使用的统信系统作为宿主机器,在上面貌似只有VM virtualBox软件,先在应用商店安装此应用。

下载ubuntu 64位镜像

一开始没注意下载了32位的系统镜像。。。。

下载好后配置网络链接,使用简单的桥接方式链接网络,确保虚拟系统能联网。

安装虚拟机,装好了后发现VM virtualBox 不能全屏,网上有哥们儿安装增强功能可以解决,嫌麻烦,在ubuntu中安装openssh-server服务,开启SSH,在宿主机中使用SSH远程链接。

apt-get update -y #更新apt

apt install openssh-server  #下载ssh server,下载好后会自动启动,然后就能在宿主机远程玩耍了。

新安装的系统root 秘密是随机的,sudo passwd设置root密码。

VPP编译

下载一些工具

apt install git #安装git

apt install vim #安装vim

下载vpp源码

git clone https://gerrit.fd.io/r/vpp 

编译

首次构建

git checkout stable/1908 #使用19版本

为了确保首次设置和构建的最新说明,VPP有一个脚本安装一些必要的软件:

第一次安装首先运行 下面的脚本,官方推荐将下载所需依赖

一、使用脚本  ./extras/vagrant/build.sh #期间会下载各种依赖包。

在下载 http://github.com/linux-rdma/rdma-core/releases/download/v25.0/rdma-core-25.0.tar.gz 可能出错,解决方式:在外面浏览器中使用此链接(http://github.com/linux-rdma/rdma-core/releases/download/v25.0/rdma-core-25.0.tar.gz )手动下载rdma-core-25.0.tar.gz包,需要校验MD5值,所以不能随便下载。然后将此压缩包放在vpp/build/external/downloads中。

在下载   可能出错,解决方式同上。

最终 vpp/build/external/downloads 文件夹中会有以下几个包

以上的脚本中会自动执行下面几条命令(脚本中编译的是release版本的),当然可以手动执行以下命令

二、手动执行命令

make install-dep #安装依赖

make install-ext-deps  #安装额外依赖

非首次直接编译

make build #编译debug版本 ,也使用 make build-release 编译release 版本

可以在vpp/build-root下面看到生成目录install-vpp_debug-native/vpp以及build-vpp_debug-native/vpp目录,其中第一个目录为运行安装文件目录,所有编译好的运行及配置等文件已准备好;第二个目录为编译时运行目录,里面很多编译过程中采用的文件。

make pkg-deb #构建deb安装包


http://www.ppmy.cn/news/141664.html

相关文章

oracle常见面试题

1.你要对操纵Oracle数据库中的数据。下列哪个选项表示Oracle中select语句的功能, 并且不需要使用子查询(C) A.可以用select语句改变Oracle中的数据 B.可以用select语句删除Oracle中的数据 C.可以用select语句和另一个表的内容…

OpenMMLab实训营二期第一节笔记

OpenMMLab是深度学习视觉算法开源平台,是目前最大最全的开源深度学习视觉算法库,为学术和产业界提供一个可跨方向、结构精良、易复现的统一算法工具库。与NLP领域的HuggingFace类似,我们可以将OpenMMLab理解为CV领域的HuggingFace。 OpenMMLa…

3D打印机DIY之六------G代码命令

切片软件对模型进行切片后会生成.gcode文件,这就是我们常说的G代码。G代码是用于指导3D打印机怎么动作的文件,其实最主要就是指导打印机的3轴电机和挤出机如何动作,比如某个电机正转多少、速度多少。 3D打印机本质就是gcode的执行器&#xff…

GLSurfaceView 与 SurfaceView 联系与区别

同系列文章: SurfaceView为什么不能做动画? SurfaceViewMediaPlayer实现视频播放 本文目录 笔试题解析有了SurfaceView,为什么还要提供一个GLSurfaceView?SurfaceView有哪些用途? 笔试题解析 下面是属于GLSurfaceView特性的是&a…

ES6-ES13学习笔记(5.0)

ES2022的函数 //findLast findLastIndex() ES2022 发现在电脑自带的联想浏览器不支持此函数,还报错了 对于ECMA的支持还和浏览器有关以及浏览器版本有关,然后我使用Google浏览器就可以正常使用, 1.扩展运算符:三个点... ..…

【QCA6174】QCA6174 DFS认证4.6.2.3 Channel Shutdown信道不跳转及检测不到雷达信号问题分析及解决方案

WIFI DFS测试要求 4.6.2.3 Channel Shutdown ---信道关闭 是指一个设备自检测到雷达信号后,到停止相应的信道传输的过程,包括信道关闭传输时间和信道移除时间。 QCA6174 DFS测试调试指令 setRadar This command is used to inject a fake radar indication to the protoc…

浙江大华后端开发一面面经

目录 1.SpringBuffer和SpringBuilder的区别是什么?2.常用的集合类有哪些?HashMap的底层数据结构?推荐一下线程安全的Map?3.TCP和UDP的差异是什么?4.MySQL的左连接和右连接的区别?5.MySQL慢查询如何排查&…

包含合并单元格的表格快速排序

实例需求:现需要将原料配方成分表按照“原料含量”从高到低排序,如下图所示。由于表格中包含合并单元格,因此Excel的排序功能无法正常。 示例代码如下。 Sub demo()Dim data(), i, idx, k, slstRow Cells(Rows.Count, 2).End(xlUp).RowReDi…