最近一直在研究Apollo的安装问题,浪费了几天时间,所有特意来记录一下安装心得。

UBUNTU 14.04安装

这个我是把自己的笔记本全部转换为ubuntu系统,操作相对简单,大家可以自行查找,另外,镜像源采用阿里的镜像源,非常便捷好用。

Apollo安装

根据开发者发布的《Apollo快速安装视频教程》(https://www.csdn.net/article/a/2018-05-14/15948340)的提示我们开始Apollo平台的安装。

大家知道Apollo将代码开源在了Github。第一步,就需要克隆Apollo 的开源代码。

git clone https://github.com/apolloauto/apollo

接下来,设置Docker 环境,我们已在源代码中提供了,安装docker 的脚本。运行该脚本即可完成安装。

bash docker/scripts/install_docker.sh

但是这一步我出现问题,文件夹中并没有install_docker.sh文件,解决办法如下:

采用DaoCloud 安装 Dokcer,具体步骤:

sudo apt-get update

sudo apt-get install -y \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
curl -fsSL https://download.daocloud.io/docker/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=$(dpkg --print-architecture)] https://download.daocloud.io/docker/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get update
sudo apt-get install -y -q docker-ce=17.09.1*
sudo service docker start
sudo service docker status

至此,一切顺利的话,Docker 安装好了。
使用 Docker 需要 root 权限,我们创建一个 docker 组,将当前用户加入到组里,使用 Docker 就可以不需要输入 sudo了

// 创建 docker 组
$ sudo groupadd docker
// 加入到 docker 组
$ sudo usermod -aG docker $USER

运行基本上不会有什么问题,之后我们继续安装apollo

紧接着是拉取Docker镜像。镜像是Apollo官方定期发布,一般是每周发布的运行环境的镜像。拉取完成之后,脚本会根据镜像创建Apollo运行的容器环境。

bash docker/scripts/dev_start.sh -C

(注:这里面的地址必须是你文件夹中显示文件的地址)

在运行容器无误的情况下,可以通过Apollo提供的脚本进入该容器。

bash docker/scripts/dev_into.sh

这时主机名称已变成in_dev_docekr,说明已经进入到容器环境;因为,对Apollo的编译,是在容器内进行的,编译,通过以下脚本完成

bash apollo.sh build

至此,都很顺利,但因为我没有GPU所有。之后的命令有问题,所有转战Apollo文件夹中的readme寻找答案

如果您没有nVidia GPU,系统将运行但具有基于CUDA的感知和其他模块。您必须指定dbg调试模式或opt优化代码

./apollo.sh build_no_perception dbg

如果您对Dreamview前端进行了修改,则必须./apollo.sh build_fe 在运行完整版本之前运行。

如果计算机速度很慢,可以输入以下命令来限制CPU。

bash apollo.sh build --local_resources 2048,1.0,1.0

启动阿波罗

运行Apollo将启动ROS核心,然后启动一个名为Dreamview的Web用户界面,这由引导脚本处理,因此从docker容器中,您应该运行:

# start module monitor
bash scripts/bootstrap.sh

访问Dreamview

通过打开您喜爱的浏览器访问Dreamview,例如Chrome,转到http:// localhost:8888,您应该看到此屏幕但是,系统中没有任何内容正在运行。

选择驱动模式

从下拉框中选择“导航”模式。

重播演示rosbag

要查看系统是否正常工作,请使用为系统提供信息的演示“包”。

# get rosbag note that the command download is required
python ./docs/demo_guide/rosbag_helper.py demo_2.5.bag # You can now replay this demo "bag" in a loop with the '-l' flag
rosbag play -l demo_2.5.bag

Dreamview现在应该展示一辆跑车。

画面中 的小车车跑起来就成功啦!!!!真的要感想不放弃的自己,吼吼~~~

Apollo安装教程的更多相关文章

  1. Linux+apache+mono+asp.net安装教程

    Linux+apache+mono+asp.net安装教程(CentOS上测试的) 一.准备工作: 1.安装linux系统(CentOS,这个就不多讲了) 2.下载所需软件 http-2.4.4.ta ...

  2. Greenplum 源码安装教程 —— 以 CentOS 平台为例

    Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...

  3. git 安装教程

    昆,简单说下安装教程1,安装Git2,安装TortoiseGit3,打开第一步安装的git工具GIT BASH

  4. Docker和Docker-compose安装教程以及docker-elk,docker-storm安装教程

    此安装教程仅供我自己安装配置时查看,其他的人不可以偷看!!! 安装Docker 1. Update package information, ensure that APT works with th ...

  5. RHEL 6.3 详细安装教程

    以前刚接触linux时,什么都不懂,为了学习,在电脑上安装双系统(原系统为Win7),吃过不少苦头,在网上搜教程,很多都是语焉不详,导致安装过程中战战兢兢.最近朋友面试运维,面试官有考他对linux安 ...

  6. Android Studio的下载和安装教程(从ADT到AS)

    之前一直使用的是Android development tools(简称ADT),后来说是google对ADT不再提供支持,然后一直在考虑是否把自己电脑换成Android Studio(简称AS),从 ...

  7. mysql快速导出数据库ER图和数据字典(附navicat11安装教程及资源)

    ♣ mysql使用navicat11快速导出数据库ER图 ♣ mysql使用navicat11快速导出数据库数据字典 ♣ navicat11 for mysql (这里是mysql5.7.12)专业版 ...

  8. Smokeping安装教程

    Smokeping安装教程 #Smokeping2.6.8安装教程 #2016.3.6 改编v1.0 #Linux运维技术交流 347163978   环境 CentOS release 6.4 (F ...

  9. (二)ADS1.2的安装教程以及使用 调试 (不会 AXD 调试工具)

    安装教程: 参考百度 http://jingyan.baidu.com/article/cdddd41c7db85253cb00e1ae.html 具体使用看: 杨铸的那本书(嵌入式底层软件驱动开发) ...

随机推荐

  1. 2018 HBCPC 菜鸡选手记

    我果然太菜了 A B--T2 D--T4 C--T3 F 我果然太菜了 作为学校最菜的队员,今天下午被虐惨了. 一下午才做A-D四道题 官方题解链接 晚上吃完饭再去看. A 队友A的不清楚.没看题. ...

  2. 假期学习【十一】Python切词,以及从百度爬取词典

    今天主要对从CSDN爬取的标题利用jieba(结巴)进行分词,但在分词过程中发现,如大数据被分成了大/数据,云计算被分隔成了云/计算. 后来又从百度百科--->信息领域爬取了相关词语作为词典,预 ...

  3. 题解【洛谷P1896】[SCOI2005]互不侵犯

    题面 棋盘类状压 DP 经典题. 我们考虑设 \(dp_{i,j,s}\) 表示前 \(i\) 行已经摆了 \(j\) 个国王,且第 \(i\) 行国王摆放的状态为 \(s\) 的合法方案数. 转移的 ...

  4. loj6278 数列分块入门题2

    题意:支持区间加,询问区间中元素排名 维护两个域.一个域维护原序列,一个域维护快内排序序列. 每次修改后更新快内排序序列. 修改时O(sqrt(n)log(sqrt(n))) 询问时O(sqrt(n) ...

  5. ES源码阅读过程

    HTTP请求的controller:RestController 游标的作用 相当于建立了一个 limit的priorityqueue 不用游标的话,相当于建立一个limit+offset的prior ...

  6. git push出错的解决办法

    今天push代码到线上的时候怎么都不行,尝试了很多办法报了好几种错比如: 反正就是各种错,然后其实不管什么错,你全部Git init 一下然后重新配置 git config --global user ...

  7. 【转】Error,java对常量池来说字符串xxx的UTF8表示过长的解决及其理解

    做项目,客户端这里自己模拟json数据时,一时没忍住搞得json字符串太长了(idea上大概有600多行吧),这个问题就蹦出来了.老方法直接google.百度然后看到一堆有关String 字符串常量池 ...

  8. Python调用cmd命令

    常用的两种方式: 1.python的OS模块. OS模块调用CMD命令有两种方式:os.popen(),os.system(). 都是用当前进程来调用. os.system是无法获取返回值的.当运行结 ...

  9. SharePoint资料

    链接:https://pan.baidu.com/s/1QOSShE02LYKXFtoJ58WCQQ 提取码:dnhs 复制这段内容后打开百度网盘手机App,操作更方便哦 SharePoint 200 ...

  10. Centos7 安装VNC实现远程桌面

    1.设置root用户方法: 1.# 复制一个服务设置的模板,命令如下: cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vn ...