记录一下第一次跑BevFusion的时候遇到的问题,网上相关资料较少,因此分享给大家如遇同样的问题
由于我的电脑是新配的5070,所以基本上驱动啥的都是最新版本
我的环境
os:ubuntu20.04
Tesnort:TensorRT-10.9.0.34
cuda:12.8
cudnn:8.9.7
protobuf:3.12.3 这个我的apt软件源apt安装的版本不太对,缺少了很多头文件,因此建议大家去源码安装
python:3.8.10
显卡驱动:570
强烈建议大家先装cuda再用cuda tool里面自带的安装驱动安装显卡驱动,会避免很多错误,黑屏,找不到设备,fail toxxxx之类的报错
装驱动的时候记得Secure Boot关闭,然后关闭图形界面,进入命令行模式再安装
sudo systemctl stop gdm
部署流程安装官网文档来就行
githun文档
主要记录一下我遇到的几个问题
问题1
这里我的cuda版本是12.8,所以安装注释设置SPCONV版本为12.6,不要设置成12.8,因为没有对应的库文件,12.x对应库文件就是12.6
问题2
我的protobuf版本是3.12.3估计和原版版本也不是严格一致的,我出现这样的报错,按照提示改掉就行
问题3
继续按流程编译,出现大量类似于
/usr/include/c++/9/bits/stl_pair.h(442): error: argument list for class template “std::pair” is missing template<typename _T1, typename _T2> pair(_T1, _T2) -> pair<_T1, _T2>;
模版类的报错,我以为是c++版本太低,调成c20也没用,
后面发现改成和14编译通过,如下图,我们cuda版本是12.x,因此走的第二个分支,原本为c17,改成c14,不知道有没有c17编通过的小伙伴,还是原作者就没有试过第二个分支
最后编译成功
效果图如下