Visual Studio Code编译Apollo项目
Apollo是百度公司发布的一个开放,完整,安全的面向汽车行业和自动驾驶领域的开源软件平台。借助于该系统,并结合他们提供的车辆和硬件系统,可以快速搭建一套属于自己的完整的自动驾驶系统。目前,我们正借助与该软件平台实现指定道路的循迹驾驶功能。
但是由于其基于Ubuntu系统,使得该项目的编译与调试变得比较繁琐。于是,我们寻求一种基于Ubuntu系统的IDE(集成开发环境),能够方便的编辑,构建Apollo项目。Visual Studio Code(VSCode)是微软公司开发的支持Ubuntu的轻量级代码编辑器,它并不是严格意义上的IDE,更像是一个代码编辑器。但它能够在Linux系统上编辑,构建Apollo项目,使用起来简单方便,所以,我们选择使用VSCode来编辑,构建Apollo项目。
二.安装Visual Studio Code
1. 下载deb安装包
https://code.visualstudio.com/Download
2. 安装Visual Studio Code
打开Ubuntu终端,输入命令
$ sudo dpkg -i code_1.19.2-1515599945_amd64.deb.
3. 运行
在终端输入命令 $ code ,即可打开VSCode Studio Code,启动后导入Apollo项目代码。
三.编译,构建Apollo项目
1.导入Apollo项目
打开VSCode,点击Open folder,选择Apollo项目文件,点击OK。如下图所示,这样,Apollo项目就成功加载进来了。
2.配置编译任务文件“tasks.json”
打开VSCode,点击菜单栏Tasks->Configure Tasks,选择“使用模板创建tasks->Others”,运行任意外部命令的实例。此时会在“.vscode“文件夹下生成任务文件“tasks.json”,将该文件修改为如下内容:
3.配置环境文件“c_cpp_properties.json”
使用快捷方式“Ctrl+shift+P”,打开属性配置对话框,选择“C/Cpp:Edit Configurations”,此时,会在此时会在“.vscode“文件夹下生成任务文件“c_cpp_properties.json”,该文件可用来配置项目中的头文件搜索路径,在“includePath”一项添加自己的头文件路径,其格式如下图所示。
4.添加“launch.json”文件
在“.vscode”文件夹下添加文件,命名为“launch.json”,并完善其内容(可省略)。
配置文件添加完毕,将上述配置内容保存,按住快捷键“Ctrl+shift+B”编译工程,编译时会启动Docker,此时,需要在底部终端输入超级用户密码。命令执行完毕,若在底部终端窗口出现如下信息,则表示编译成功。
四.问题及解决方案
1.编译时长时间停留在“Building: no action running”界面
这是由于当前系统中存在多个不同版本的Docker或者是bazel内部缓存不一致造成的。解决方法:按住快捷键“Ctrl+C”终止当前构建过程,在VSCode的命令终端窗口,使用下述任意一中,停止当前运行的Docker
方式1:停止当前所有Apollo项目的Docker
$ dockerstop ${docker ps -a | grep apollo | wak ‘{print $1}’}
方式2:停止当前所有的Docker
$ dockerstop ${docker ps -aq}
2.编译时遇到 “ERROR:query interrupted” 错误
这是由于bazel内部缓存不一致造成的,解决方法:
按任意键退出编译过程,在VSCode的命令终端窗口执行如下命令进入Docker环境
$ bashdocker/scripts/dev_into.sh
在Docker环境中输入如下命令,执行bazel的清理缓存任务(此过程需要保持网络通畅,以便成功下载依赖包)
$ bazelquery
最后,输入exit命令退出Docker环境,按快捷键“Ctrl+Shift+B”,重新执行构建任务。
编辑推荐
最新资讯
-
荷兰Zepp氢燃料电池卡车-Europa
2024-12-22 10:13
-
NCACFE -车队油耗经济性报告(2024版)
2024-12-22 10:11
-
R54法规对商用车轮胎的要求(上)
2024-12-22 10:10
-
蔚来ET9数字架构解析
2024-12-22 09:53
-
4G/5G网络新时代的高效紧急呼叫系统NG-eCal
2024-12-20 22:33