干掉百度Apollo的安装!(Apollo9.0在Ubuntu电脑上的包管理安装)

目录

写在前面

一、给电脑安装Ubuntu20.04

二、安装Docker Engine

三、获取 GPU 支持

四、安装环境管理工具

五、安装示例工程

六、编译工程

七、启动Dreamview+


写在前面

1、在安装了Ubuntu20.04的电脑上,使用包管理安装Apollo9.0,这种安装方式,在Apollo9.0的四种安装方式中是最简单的。

2、本教程是按照百度Apollo9.0的包管理安装手册(apollo.baidu.com)进行的操作,并在此基础上就遇到的问题做的补充。

一、给电脑安装Ubuntu20.04

1、可以专门找一台电脑安装上Ubuntu20.04,也可以给电脑安装双系统,两种方式都可以;

2、安装好Ubuntu20.04之后,要执行以下两条命令

# 更新软件列表 
sudo apt-get update 
# 将已安装的软件更新到最新 
sudo apt-get upgrade

第二条命令,可以不执行,它花的时间比较多。

二、安装Docker Engine

(1)直接使用百度Apollo安装手册中提供的脚本进行安装

// 下载docker engine的安装脚本 
wget http://apollo-pkg-beta.bj.bcebos.com/docker_install.sh 
// 运行docker engine的安装脚本 
bash docker_install.sh

        运行安装脚本后可能会出现安装失败的情况,没关系,失败了就重新运行第二条命令,反复多运行几次,直到成出现Docker OK的字样。

(2)如果还是安装不成功,卡在获取docker engine上,就执行下面的命令,将原有的 Docker 官方源替换为国内镜像源,之后再次运行上面的安装脚本。要等显示获取docker engine不成功的时候,再运行下面两条命令,太早运行是不行的。

sudo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/apt/sources.list.d/docker.list 
sudo apt-get update

三、获取 GPU 支持

1、安装Nvidia显卡驱动驱动

(1)首先,电脑的显卡必须是Nvidia的显卡

(2)只要你的Ubuntu系统是正常安装的,显卡驱动一般都是没有问题的,不需要安装;

(3)验证显卡驱动是否有问题,只要在终端中输入nvidia-smi,只要有正常输出,就说明GPU的驱动是没有问题的,这一步就可以过了;

2、安装 Nvidia container toolkit

下面的代码是为了让docker容器能够调用GPU。

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
sudo systemctl restart docker

四、安装环境管理工具

Apollo 环境管理工具aem是一个帮忙管理和启动 Apollo的Docker容器的命令行工具。

aem在包管理安装中才需要安装,在源码安装中是不需要安装的。

sudo apt-get update
sudo apt-get install ca-certificates curl gnupg

# 添加 gpg key
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://apollo-pkg-beta.cdn.bcebos.com/neo/beta/key/deb.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/apolloauto.gpg
sudo chmod a+r /etc/apt/keyrings/apolloauto.gpg
 
# 设置源并更新
echo \
    "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/apolloauto.gpg] https://apollo-pkg-beta.cdn.bcebos.com/apollo/core"\
    $(. /etc/os-release && echo "$VERSION_CODENAME") "main" | \
    sudo tee /etc/apt/sources.list.d/apolloauto.list
sudo apt-get update

sudo apt install apollo-neo-env-manager-dev --reinstall

aem -h

五、安装示例工程

1、下载application-core

git clone https://github.com/ApolloAuto/application-core.git application-core

如果下载失败,就多尝试几次,下载失败是因为网络导致的。

2、切换代码版本

        这里就是一个非常大的坑,在apollo的安装手册中,根本不告诉你要切换到哪个版本,按照安装手册下载源码后就直接进行编译,而目前最新的是10.0的版本,如果直接编译,编译完实际上是10.0的版本,所以我们需要自己来切换版本。

下面我们先查看一个git的提交记录,执行下面的命令

cd application-core
git log

下面这个版本是我们需要的。

commit 7537574c2c88e9d3b51b9662e506af2e99143e70
Merge: 690798f 5ed5578
Author: hearto1314 <hearto_job@163.com>
Date:   Mon Jun 17 16:58:31 2024 +0800

    Merge branch '9.0.0_rc_r13' into main

我们切换到这个版本,并在此版本的处建立一个分支v9.0。

git checkout 7537574
git switch -c v9.0

3、下载docker镜像,并创建容器

bash setup.sh
aem start

这个会花费非常常的时间,因为apollo的docker环境镜像非常大。

容器创建完成后会自动进入容器,我们可以看到命令提示符变了,有(apollo-9.0)了。

(apollo-9.0)[dbj@in-dev-docker:

注意,第一次的时候需要执行aem start,第二次再想进入容器,直接执行aem enter就可以了,像下面这样:

cd application-core
aem enter

六、编译工程

编译工程是在docker容器中进行的。

buildtool build -p core

        注意:在编译过程中会如果报错,可以看一下报错信息,基本是因为网络导致的,报错了,就重新执行上面的命令再次编译,多试几次,就能编译成功。我重新执行了三四次才最终编译成功的。

七、启动Dreamview+

下面的命令是在apollo的docker容器中执行的

# 以sample为例
aem profile use sample
# 下载数据包
wget https://apollo-system.cdn.bcebos.com/dataset/6.0_edu/demo_3.5.record -P $HOME/.apollo/resources/records/
# 下载数据包对应的地图
buildtool map get sunnyvale
# 启动dreamview+
aem bootstrap start --plus

启动 Dreamview+ 之后,在浏览器输入 localhost:8888 就可以进入 Dreamview+ 界面了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有诗人气质的魔法师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值