• Apollo6.0安装文档教程——环境搭建、安装、编译、测试


    一 、环境搭建

    Apollo安装的前提:

    1) Ubuntu 18.04
    Ubuntu18.04的安装可参见安装教程

    2) NVIDIA 显卡驱动
    这个相对简单一些,网上也有很多教程,可参考如下代码:

    sudo apt-get update
    sudo apt-add-repository multiverse
    sudo apt-get update
    sudo apt-get install nvidia-driver-460
    
    • 1
    • 2
    • 3
    • 4

    接着再执行语句:

    nvidia-smi
    
    • 1

    如果正确安装后会出现显卡相关内容的界面

    在这里插入图片描述

    NOTE

    1)首先Apollo不支持3080显卡,太高级了,至少Apollo6.0不支持
    在这里插入图片描述

    2)如果是虚拟机,因为虚拟机无法虚拟NVIDIA显卡,所以此此步骤务必跳过,否则将导致后续启动 Apollo 开发容器失败。
    3)安装NVIDIA显卡驱动需要先禁用nouveau驱动
    在终端执行:

    sudo gedit /etc/modprobe.d/blacklist.conf
    
    • 1

    在打开的文件末尾添加如下内容后保存再重启系统:

    blacklist nouveau
    options nouveau modeset=0
    
    • 1
    • 2

    重启系统后在终端输入:

    lsmod | grep nouveau
    
    • 1

    没有任何输出即表示禁用成功。
    在这里插入图片描述

    3)Docker 引擎(此步骤可在Apollo安装步骤中完成——3.1)
    4)安装 NVIDIA 容器工具(此步骤可在Apollo安装步骤中完成——3.2)
    以上均已配置完毕。

    二 、下载源码

    Apollo下载地址

    在这里插入图片描述
    可在箭头所示的mater下拉框中选择相应版本

    三 、安装

    3.1 安装docker

    进入到下载好的apollo-6.0/docker/setup_host路径下,执行:

    sudo bash install_docker.sh
    
    • 1

    Docker安装完成后,重启电脑:

    sudo reboot
    
    • 1

    重启后:

    docker --version
    
    • 1

    在这里插入图片描述

    如图即为安装成功。

    3.2 NVIDIA 容器工具

    另外,因为容器是一个独立于系统的另一个环境,为了能够在Docker中也能够使用GPU资源,我们还需要安装nvidia-docker。

    wget -P /tmp https://github.com/NVIDIA/nvidia-docker/releases/download/v1.0.1/nvidia-docker_1.0.1-1_amd64.deb
    sudo dpkg -i /tmp/nvidia-docker*.deb && rm /tmp/nvidia-docker*.deb
    
    • 1
    • 2

    验证是否安装成功:

    nvidia-docker run --rm nvidia/cuda:9.0-devel nvidia-smi
    
    • 1

    博主另外提供安装方式供参考:

    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 update
    sudo apt-get install -y nvidia-docker2
    sudo systemctl restart docker
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    选择其一就好啦。

    3.3 创建Apollo container

    cd apollo
    :bash docker/scripts/dev_start.sh
    
    • 1
    • 2

    此过程此过程需要下载很多image,耗时较长,成功后会显示“[OK], Enjoy!”
    在这里插入图片描述

    3.4 进入container

    sudo bash docker/scripts/dev_into.sh
    
    • 1

    在这里插入图片描述

    3.5 编译Apollo

    进入container之后,编译Apollo,分为两种情况有GPU和无GPU:
    1)有GPU

    bash apollo.sh build_opt_gpu
    
    • 1

    2)无GPU

    sudo bash apollo.sh build_cpu
    
    • 1

    此过程耗时较长,编译过程中可能会出现一些warning,如:warning: ‘DimsNCHW’ is deprecated,不用担心,不影响后续过程的使用。
    成功时会提醒:Done building apollo. Enjoy!
    在这里插入图片描述

    3.6 启动Dreamview

    bash scripts/bootstrap.sh
    
    • 1

    若出现permission denied,属于权限问题,利用chmod授权:

    sudo chmod +x scripts/bootstrap.sh
    
    • 1

    若还无法执行,

    sudo chmod +x scripts/ -R
    
    • 1

    Scripts目录下全部授权。
    执行成功后显示:

    Dreamview is running at http://localhost:8888
    
    • 1

    在这里插入图片描述

    3.7 Dreamview查看

    打开Chrome或者FireFox浏览器,在地址栏输入http://localhost:8888即可访问Apollo Dreamview,如下图所示:
    在这里插入图片描述

    3.8 测试

    3.8.1 下载测试文件

    cd docs/demo_guide/
    python3 record_helper.py demo_3.5.record
    
    • 1
    • 2

    等待时间会略长。

    3.8.2 运行测试数据:

    cyber_recorder play -f demo_3.5.record --loop
    
    • 1

    在这里插入图片描述
    选项 --loop用于设置循环回放模式.
    停止container:
    退出容器: exit
    或者在宿主机中执行:
    使用docker stop $(docker ps -aq)停止docker的所有容器
    或者使用docker stop apollo_xxxxx停止某个apollo容器

    四、运行笔记记录

    4.1 重新启动进入Apollo docker

    切换进入APOLLO目录

    bash docker/scripts/dev_start.sh
     
    bash docker/scripts/dev_into.sh
     
    bash apollo.sh build_opt_gpu
    
    bash scripts/bootstrap.sh
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
  • 相关阅读:
    尚硅谷《vue》——笔记一
    「C#」异步编程玩法笔记-Thread、ThreadPool、Task
    Milvus 介绍
    [PyTorch][chapter 54][GAN- 1]
    c语言中的fputc、fputs
    Excel VLOOKUP实用教程之 09 VLOOKUP 与多个条件一起使用?(教程含数据excel)
    Github学生认证
    vue.js毕业设计,基于vue.js前后端分离教室预约系统设计与实现(H5移动项目)
    C/C++中常用必会的专业单词(持续更新 目前53个)
    使用ZooKeeper客户端原生API实现分布式配置中心
  • 原文地址:https://blog.csdn.net/qq_37346140/article/details/127405885