ubuntu 20.04 编译安装 p 详解

2021/6/4 7:25:24

本文主要是介绍ubuntu 20.04 编译安装 p 详解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

事情的起因

  1. 实验需要安装 p4 环境
  2. 我考虑到我自己的电脑性能不足,因此打算在本机安装
  3. github上官方仓库的安装教程老旧,都是在 ubuntu14.04或者ubuntu16.04
  4. 我长时间用的linux系统是 ubuntu20.04

鉴于以上原因,我开始自己对p4安装的专研。。

这个是我自己写的shell脚本,已经在 ubuntu 20.04上测试通过


先放上官网

[p4 github](https://github.com/p4lang/)
[p4 官网](https://p4.org/)

然后是踩的坑

  1. 使用了anacond,使得后续找不到python库,另外使用sudo或root安装库会导致安装的位置混乱
  2. 按照官方教程安装,由于版本比较旧,导致源码编译不通过,通过更新编译不通过的源码包会因为p4各个模块的版本之间的依赖问题使得环境检测make check出错
  3. 计算机性能较差,编译卡死过很多次

解决方案

以p4c着手,倒推各个依赖源码的版本,当依赖的版本无法编译时,更新源码和依赖该源码的模块

以下是我自己写的shell脚本对应的解释
image
设置各个模块的版本(因为各个版本之间有特定的以来关系)

image
配置 ovs 并将安装日志写入对应文件

image
mininet 的安装,最后一行是 mininet 的测试,需要启动 ovs ( ovs-ctl start )

image
p4 安装中重要的依赖关系:protobuf

image
p4安装中重要的依赖关系:grpc

image
bmv2 和 PI 模块的重要依赖
中国计算机学会推
image
PI 模块的编译安装

image
bmv2 模块的编译安装

image
p4c 的编译安装

image
p4 使用参考文档

至此就安装好了,脚本中有些 make check 可以安装好再测试.....
因为如果之前安装过 p4,但出现了错,注释掉的那些 make check 可能导致脚本报错停止。。。
由于时间比较匆忙,没有做过多的 p4 介绍,,有时间再添加内容吧。。。



这篇关于ubuntu 20.04 编译安装 p 详解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程