前面两步安装好后,这一步很简单,几乎不会报错,此处直接复制官网内容,后续安装具体以官方为准。
安装 Apollo 环境管理工具
Apollo 环境管理工具是一个帮忙管理和启动 Apollo 环境容器的命令行工具。
1. 安装依赖软件
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
2. 在宿主机添加 Apollo 软件源的 gpg key,并设置好源和更新
# 添加 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
注:如果之前已经安装过8.0版本的apollo的话,在宿主机上的
/etc/apt/sources.list
文件中会有形如deb https://apollo-pkg-beta.cdn.bcebos.com/neo/beta bionic main
的配置,可以直接删除,宿主机上的apollo源配置仅用于安 装aem
工具
3. 安装aem:
sudo apt install apollo-neo-env-manager-dev --reinstall
安装成功后即可使用
aem -h
步骤四:安装示例工程
1. 选择示例工程
Apollo 目前提供了3个示例工程,您可以根据需要选择其一
- application-core , 包含 Apollo 所有开源软件包,可以基于此工程搭建自己的应用
- application-pnc , 仅包含规划控制相关的软件包,适合仅关注规划控制方向的用户
- application-perception , 仅包含感知相关的软件包,适合仅关注感知方向的用户
2. 克隆工程
以 x86 架构的 application-core 为例
git clone https://github.com/ApolloAuto/application-core.git application-core
3. 启动 Apollo 环境容器
# 先进入工程目录
cd application-core
# 环境设置:识别主机系统是x86_64还是aarch64, 并修改对应的.env和.workspace.json配置
bash setup.sh
# 启动容器
aem start
4. 进入 Apollo 环境容器
# 先进入工程目录
cd application-core
# 进入容器
aem enter
5. 安装软件包
示例工程中包含一个名为 core
目录,其中 core/cyberfile.xml
文件中描述了工程所依赖软件包,可以通过 buildtool 工具进行依赖包的安装
,此操作真正含义是编译工程中 core
这个包,但 core
本身并没有需要编译的代码,所以此操作仅会安装 core/cyberfile.xml
中声明的依赖包
buildtool build -p core
(可选)此步骤极易由于网络原因,导致安装失败。
原因:bazel提示Error downloading,说明bazel由于网络原因无法下载自身的依赖
解决方法:
这个可能是网络问题导致的,由于各地网络的复杂性,可以尝试切换手机热点来下载这些依赖
如果仍无法下载依赖,可以使用Apollo预下载好的外部依赖缓存:
aem enter # 该命令在宿主机执行,如果已在容器内,可以忽略这一步
cd /apollo_workspace
wget https://apollo-system.cdn.bcebos.com/bazel_deps/cache.tar.gz
rm -rf .cache
tar -xzvf cache.tar.gz
6. 选择车型配置
示例工程中profiles/sample目录是官方提供的基于一个雷达两个摄像头的车型配置,您可以参考profiles目录下的sample编写自己的车型配置,生效车型配置的方法如下:
# 以sample为例
aem profile use sample
7. 播放数据包
获取数据包
wget https://apollo-system.cdn.bcebos.com/dataset/6.0_edu/demo_3.5.record -P $HOME/.apollo/resources/records/
获取数据包对应的地图
buildtool map get sunnyvale
从
9.0.0-rc-r10
版本开始,地图数据已经被分离出来,需要单独下载,不再随地图包发布;通过buildtool map list
可以查看所有可用的地图
启动 Dreamview+
aem bootstrap start --plus
在 Dreamview+ 中播放数据包
启动 Dreamview+ 之后,在浏览器输入 localhost:8888
进入 Dreamview+ 界面,您可以选择默认模式,也可以选择其他模式播放数据包。本小节以默认模式为例
其他:
编译及使用有问题,参见官方解决方案