centos7编译源码安装vpp

本次编译源码用的系统是centos7.9,内存40G的服务器(编译源码内存需要大于4G,4G内存编译出错,推荐8G)。环境为联网环境,因为下载的依赖包和安装包比较多,最后生成的rpm包可以进行无网安装,最后生成的rpm包适用于centos7和centos8,亲测centos8也能安装成功。
一。下载源码
二。安装依赖
三。编译源码
四。生成rpm包
五。rpm包安装vpp
六。问题记录

一。下载源码
1.git clone -b master https://github.com/FDio/vpp.git
2.git clone https://gerrit.fd.io/r/vpp
两个网站都是最新的vpp源码,由于个人网络问题,访问github总是连不到,所以优先使用第二个。
需要安装git,见六。问题记录
在这里插入图片描述
二。安装依赖。
进入vpp目录
cd vpp
进行依赖包安装
make install-dep
在这里插入图片描述
三。编译源码。
首先进入build-root执行
make distclean
在这里插入图片描述
然后回到上级目录执行
make build
在这里插入图片描述
出现问题见六。问题记录
在这里插入图片描述
四。生成rpm包
make pkg-rpm
在这里插入图片描述
出现问题见六。问题记录
五。rpm包安装vpp
进入build-root目录执行
rpm -ivh *.rpm --nodeps --force
在这里插入图片描述
service vpp start
service vpp status
vppctl
见到如下页面证明成功。
centos8启动vpp如果不成功参考
https://blog.csdn.net/weixin_42736510/article/details/121514410
在这里插入图片描述
OK!

六。问题记录。
1.-bash: git: command not found
在这里插入图片描述
2.github下载v1.0.tar.gz问题
在这里插入图片描述
多执行几遍make build,应该是网络连接github.com连不上。
在这里插入图片描述
3.github下载rdma-core-35.0.tar.gz问题
在这里插入图片描述
同上。

4.github下载quicly_0.1.3-vpp.tar.gz问题
在这里插入图片描述
同上
5.NASM 问题
在这里插入图片描述
/bin/sh: /root/zby/vpp/build-root/install-vpp_debug-native/external/bin/nasm: No such file or directory
Makefile:60: *** “NASM is not installed! Minimum required version: 2.14”. Stop.
出现这个问题,首先看看内存是否低于8G,要是不低于,执行以下命令,这个命令具体意思不大清楚。
make install-ext-deps
结束现象正常,然后重新执行 make build。这个问题就解决了
6.cc1问题
在这里插入图片描述
FAILED: CMakeFiles/plugins/crypto_native/CMakeFiles/crypto_native_hsw.dir/aes_cbc.c.o
ccache /usr/lib64/ccache/cc -DCLIB_DEBUG -I/root/zby/vpp/src -ICMakeFiles -I/root/zby/vpp/src/plugins -ICMakeFiles/plugins -fPIC -g -fPIC -Werror -Wall -Wno-address-of-packed-member -O0 -fstack-protector -fno-common -march=haswell -maes -MD -MT CMakeFiles/plugins/crypto_native/CMakeFiles/crypto_native_hsw.dir/aes_cbc.c.o -MF CMakeFiles/plugins/crypto_native/CMakeFiles/crypto_native_hsw.dir/aes_cbc.c.o.d -o CMakeFiles/plugins/crypto_native/CMakeFiles/crypto_native_hsw.dir/aes_cbc.c.o -c /root/zby/vpp/src/plugins/crypto_native/aes_cbc.c
/root/zby/vpp/src/plugins/crypto_native/aes_cbc.c:1:0: error: bad value (haswell) for -march= switch
/*
^
cc1: error: unrecognized command line option “-Wno-address-of-packed-member” [-Werror]
cc1: all warnings being treated as errors
[264/1965] Generating API header /root/zby/vpp/build-root/build-vpp_debug-native/vpp/CMakeFiles/plugins/cnat/cnat.api.h
ninja: build stopped: subcommand failed.

主要看cc1: error
解决方法,gcc版本问题,系统自带的版本是4.8.5,需要升级。
在线升级到gcc7
https://blog.csdn.net/weixin_42736510/article/details/121558073
源码更新到gcc9(编译时间稍长)
https://blog.csdn.net/weixin_42736510/article/details/121557807
在这里插入图片描述
7.boost问题
在这里插入图片描述
error: Failed build dependencies:
boost is needed by vpp-22.02-rc0~334_g09abed6.x86_64
boost-devel is needed by vpp-22.02-rc0~334_g09abed6.x86_64
make[1]: *** [RPM] Error 1
解决方法:
yum install boost
yum install boost-devel

编译完成生成的vpp rpm包
编译完成生成的vpp rpm包

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 22
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值