Apollo 2.5 安装踩坑指南

apollo 是百度的无人驾驶平台。

环境

  • Ubuntu 14.04.4
  • Dokcer-CE 17.09.1

先安装 Docker

官网教程安装 Docker 在网不好的情况下会有大概率安装不成功。
国内建议使用 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 就可以不需要输入 sodu 了

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

操作完了重启一下电脑生效。

下载 apollo 源码

这里我们指定下载 2.5.0 版本的

git clone --branch v2.5.0 https://github.com/ApolloAuto/apollo.git

下载 docker 镜像 & 进入容器

之后就按照 README 步骤构建 dev 环境

// 这里记得加上 -C,网好就可以忽略
bash docker/script/dev_start.sh -C
bash docker/script/dev_into.sh

dev_start 是 pull 各种需要的 docker 镜像。并且把容器跑起来
镜像文件有点大,差不多 3 到 4 G 的样子,慢慢等。。。
dev_into 就是进入容器

Build apollo 源码

build apollo 源码是要在容器里做的

bash apollo.sh build

build 过程没有报错的话就可以跑 dreamview 了

bash scripts/bootstrap.sh

dreamview 跑起来后,打开你最爱的浏览器输入 localhost:8888 回车。
如果看到界面了,那恭喜你,上辈子可能拯救了银河系~
看到界面的同学,请跳过下面的踩坑之路直接看最后的 play bag

踩坑之路

一次性安装成功是不可能一次性安装成功的,这辈子是不可能一次性安装成功的。
很难受。
我的 dreamview 告诉我他已经跑起来了,但是浏览器打不开 localhost:8888,翻了会 lssues,发现有和我一样的问题 -> #3615
没跑起来的原因是与 apollo 用来处理点云图的 lib 有关.
我们需要把这个 lib 重新编译一下然后替换掉容器内的。
lib 的仓库地址:PointCloudLibrary
先下载下来再说

git clone --branch pcl-1.7.2 https://github.com/PointCloudLibrary/pcl.git

修改 CMakeLists.txt

// 从第九行开始,也就是这句的下一行
set(CMAKE_CONFIGURATION_TYPES "Debug;Release" CACHE STRING "possible configurations" FORCE)
 
// 插入如下代码
if (CMAKE_VERSION VERSION_LESS "3.1")
# if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
    set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
    message("Build with c++11 support")
# endif ()
else ()
  set (CMAKE_CXX_STANDARD 11)
endif ()

编译

mkdir build
cd build
cmake ..
make -j4

// 将编译后的 lib 覆盖到 /usr/local/lib 下
cp -a lib/* /usr/local/lib/

现在,重新在运行你的 dreamview,应该就能看到界面了。
如果还看不到,,,,哈哈哈哈哈哈哈

play bag

dreamview 已经看到了,跑个测试数据玩玩。

rosbag play docs/demo_guide/demo.bag --loop
// 如果找不到 rosbag 命令的话,执行一下这句再试试
source /apollo/bazel-apollo/external/ros/setup.bash

好了,看看你的 dreamview 吧

最后

这是我在安装 apollo 的过程中遇到的一些问题,希望能帮助到需要的人。
另外有些命令手打上去的,不正确的话请检查一下。

片段 - 代码分享

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,233评论 6 495
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,357评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,831评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,313评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,417评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,470评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,482评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,265评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,708评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,997评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,176评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,827评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,503评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,150评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,391评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,034评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,063评论 2 352

推荐阅读更多精彩内容

  • Docker — 云时代的程序分发方式 要说最近一年云计算业界有什么大事件?Google Compute Engi...
    ahohoho阅读 15,523评论 15 147
  • 转载自 http://blog.opskumu.com/docker.html 一、Docker 简介 Docke...
    极客圈阅读 10,489评论 0 120
  • 五、Docker 端口映射 无论如何,这些 ip 是基于本地系统的并且容器的端口非本地主机是访问不到的。此外,除了...
    R_X阅读 1,743评论 0 7
  • 今天太阳不错,领导没来,美!上班没事儿的时候就玩儿几把王者荣耀,段位也不高,纯属瞎玩儿。一般跟同事一起开黑,打个三...
    赵着急_阅读 179评论 0 0
  • 在使用spring开发中,安装SpringSource Tool Suite会使我们开发变得跟家便捷。 第一步、检...
    XM_Dong阅读 994评论 0 1