官方源码安装教程
https://blog.csdn.net/weixin_45929038/article/details/120113008
安装NVIDIA GPU
驱动
Apollo 8.0 的一些模块的编译和运行需要依赖 NVIDIA GPU 环境(例如感知模块),如果有编译和运行这类模块的需求,则需要安装 NVIDIA GPU 驱动。
三种方式安装显卡驱动
Linux系统安装NVIDIA显卡驱动
apt 安装
sudo apt-get update
sudo apt-add-repository multiverse
sudo apt-get update
sudo apt-get install nvidia-driver-525
官方驱动安装
官方驱动下砸
NVIDIA Driver Downloads
(软件与更新)附加驱动安装
安装测试
nvidia-smi
安装docker
Apollo 8.0
依赖于 Docker 19.03+
。要安装 Docker
,参见我的笔记。
ubuntu20.04安装docker教程
安装测试
docker -v
# output
Docker version 24.0.7, build afdd53b
安装NVIDIA Container Toolkit
(可选)
为了在容器内获得 GPU
支持,在安装完 docker
后需要安装 NVIDIA Container Toolkit
。
基于Apollo的CUDA的docker镜像需要依赖于NVIDIA Container Toolkit。
Installing the NVIDIA Container Toolkit英伟达官方安装参考文档
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get -y update
sudo apt-get install -y nvidia-docker2
安装完成后,重启 Docker
以使改动生效。
sudo systemctl restart docker
下载并编译 Apollo 源码
安装 git 并将源码 clone 下来
cd ~/
sudo apt update
sudo apt install git -y
git init
git clone https://github.com/ApolloAuto/apollo.git
# 可以用IDM或者xdm加速器下载(超级快)
https://github.com/ApolloAuto/apollo
代码下载的时间视网速的快慢而有所区别,请耐心等待。
启动并进入 docker 容器
cd ~/apollo
bash docker/scripts/dev_start.sh
第一次进入 docker 时或者 image 镜像有更新时会自动下载 apollo 所需的 image 镜像文件,下载镜像文件的过程会很长,请耐心等待(6G左右)。
如果一切正常,则会见到以下信息:
[ OK ] Congratulations! You have successfully finished setting up Apollo Dev Environment.
[ OK ] To login into the newly created apollo_neo_dev_root container, please run the following command:
[ OK ] bash scripts/edu_launcher.sh enter
[ OK ] Enjoy!
这个过程完成后,请输入以下命令以进入 docker
环境中:
bash docker/scripts/dev_into.sh
进入容器后,如果在步骤二和步骤四分别安装了 NVIDIA GPU 驱动和 NVIDIA Container Toolkit
,可以输入nvidia-smi
来校验 NVIDIA GPU 在容器内是否能正常运行,如果成功,则会出现以下信息:
NVIDIA-SMI 525.147.05 Driver Version: 525.147.05 CUDA Version: 12.0
******
编译 Apollo 源码
# 普通编译
bash apollo.sh build
# 优化模式编译(GPU)
bash apollo.sh build_opt_gpu
# 优化模式编译(CPU)
bash apollo.sh build_cpu
编译成功以后,将显示如下字样
(02:26:51) INFO: Elapsed time: 849.925s, Critical Path: 164.47s
(02:26:52) INFO: 26743 processes: 18504 internal, 8239 local.
(02:26:52) INFO: Build completed successfully, 26743 total actions
+ set +x
==============================================
[ OK ] Done building apollo. Enjoy!
==============================================
启动Dreamview测试编译是否成功
完成编译后,即可在Docker环境下启动Dreamview进行测试
- 进入apollo容器 (如果已在容器环境内,请忽略此步骤)
cd ~/apollo
bash docker/scripts/dev_start.sh
bash docker/scripts/dev_into.sh
- 启动dreamview
bash scripts/bootstrap.sh
如果启动成功,在终端会输出以下信息
nohup: appending output to 'nohup.out'
[ OK ] Launched module monitor.
nohup: appending output to 'nohup.out'
[ OK ] Launched module dreamview.
Dreamview is running at http://localhost:8888
在浏览器中输入以下地址访问 Dreamview
https://localhost:8888
-
回放数据包
-
首先需要下载record数据包(类似于ROS中的bag数据包)
wget https://apollo-system.cdn.bcebos.com/dataset/6.0_edu/demo_3.5.record
- 随后使用cyber RT运行播放数据
选项 –loop 用于设置循环回放模式
即可在Dreamview中查看播放的数据了
cyber_recorder play -f demo_3.5.record --loop