本人硬件环境:

CPU:Intel Core i7 6700

显卡(GPU):NVIDIA GTX 3080 10G

内存:SAMSUNG DDR4 32GB

硬盘:双SSD系统盘 2T,双系统(windows,ubuntu)

一、安装Ubuntu 22.04.2 LTS

安装Ubuntu 22.04.2 LTS比较简单,这里不做细说。

安装完后如下图

二、安装 NVIDIA 显卡驱动

只需执行以下命令即可:

sudo apt-get update
sudo apt-add-repository multiverse
sudo apt-get update
sudo apt-get install nvidia-driver-455

安装完毕后,可以输入nvidia-smi来校验 NVIDIA GPU 驱动是否在正常运行(可能需要在安装后重启系统以使驱动生效)。如果成功,则会出现以下信息:

注意:现在NVIDIA GeForce … On,这里,应该会是OFF。我由于安装了CUDA 12后,才显示On的。

重启

三、安装CUDA Toolkit 12.0,启用GPU

下载 CUDA Toolkit 12.0

下载地址:https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exe_local

输入如下命令:

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/12.0.1/local_installers/cuda-repo-ubuntu2204-12-0-local_12.0.1-525.85.12-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2204-12-0-local_12.0.1-525.85.12-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2204-12-0-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda

安装完后,重启

重启后,执行nvidia-smi

看到GPU启用状态,就对了。

四、安装 docker,Apollo 8.0依赖于Docker 19.03版本及以上,安装方式如下:

#首先,需要安装依赖并卸载旧版本
# 安装依赖项
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

# 卸载旧版本(可能不存在)
sudo apt-get remove docker docker-engine docker-ce docker.io

#随后,添加docker官方提供的密钥并更新软件源
# 添加gpg密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add –

# 设置stable存储库
sudo add-apt-repository “deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable”

# 更新软件源
sudo apt-get update

#之后,直接安装最新版本的docker即可。
# 安装docker
sudo apt-get install docker-ce docker-ce-cli containerd.io

#安装完成后还需要添加权限
#添加docker用户组
sudo groupadd docker

#将登陆用户加入到docker用户组中
sudo gpasswd -a $USER docker

#更新用户组
newgrp docker

#设置开机自启动
sudo systemctl start docker && sudo systemctl enable docker
sudo systemctl enable docker.service
sudo systemctl enable containerd.service

五、下载Apollo8.0并编译 Apollo 源码

地址:GitHub – ApolloAuto/apollo: An open autonomous driving platform

apollo-master.zip,下载后,压缩文件是1.1G,解压至根目录下,并改目录名为:apollo

启动并进入 docker 容器,在终端输入以下命令:

cd ~/apollo

bash docker/scripts/dev_start.sh

执行后,看到如下界面

第一次进入 docker 时或者 image 镜像有更新时会自动下载 apollo 所需的 image 镜像文件,下载镜像文件的过程会很长,请耐心等待。

这里下载几十个G的数据,巨大

看到上面这界面,表示下载完成,并一切正常。

接下来输入以下命令以进入 docker 环境中:

bash docker/scripts/dev_into.sh

看到下面界面,表示,进入了docker 环境

我们输入nvidia-smi来校验 NVIDIA GPU 在容器内是否能正常运行,如果成功,则会出现以下信息:

编译 Apollo 源码。

#切换到root权限,输入执行

sudo -s

编译 Apollo,在终端输入以下命令,等待编译完成,编译过程耗时视机器配置的不同而有所区别,请耐心等待:

bash apollo.sh build

出现如下界面,接着等待

等了接近一小时,终于大功告成,见如下界面。

六、运行 Dreamview 检验编译是否成功

退出root权限,执行

exit

回到自身帐户

输入并执行

bash scripts/bootstrap.sh

在浏览器中输入以下地址访问 Dreamview:

http://localhost:8888

获取回放数据包。

在终端输入以下命令下载数据包:

wget https://apollo-system.cdn.bcebos.com/dataset/6.0_edu/demo_3.5.record

输入以下命令可以回放数据包,在浏览器 DreamView 中应该可以看到回放画面:

cyber_recorder play -f demo_3.5.record –loop

如果成功在浏览器中看到类似以下画面,则表明您的 Apollo 系统已经编译并成功运行。

完成,耗时,1.5天,主要下代码包,下了七八次(比较耗时),最终确定所有代码大小为1.1G后,开始后面的动作。