基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建

作者:Awesome

日期:2017-10-21

需准备的软件工具

  • Ardupilot飞控源码

  • PX4 toolchain

  • JAVA开发环境,注意必须是32位的软件。

1、Ardupilot飞控源码下载

下载链接 https://github.com/ArduPilot/ardupilot,下载说明如下图:

2、PX4 toolchain工具下载与安装

下载链接 http://firmware.ardupilot.org/Tools/PX4-tools/pixhawk_toolchain_installer_latest.exe

安装该软件可以选择安装在系统盘目录下,也可以选择安装在其他盘目录下。PX4工具链中包括Python,Python的指令在windows下运行需要配置环境变量。具体步骤:

  • 点击桌面左下角系统图标 ,运行开始菜单

  • 输入 编辑系统环境变量并选择结果运行

  • 选择环境变量

  • 系统变量中查找path,并在变量值后面加入路径:C:\pixhawk_toolchain\Python27(根据工具链的安装位置选择,注意数据路径名的时候不要漏了前面的分号" ; ")。选择添加python工具的路径是因为飞控中有些代码的二次开发需要其支持,例如:mavlink自定义消息代码的生成等。

      

  • 运行windows系统的终端,输入python,回车,此时会进入python终端程序。

3、JAVA的下载与安装配置

  • 下载链接http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html,选择下载32位操作系统对应的JDK。文中基于jdk-8u151-windows-i586.exe

  • 安装,可以采用默认方式进行安装。

  • 安装完成后,进入windows系统终端,输入java -version,回车运行。如果成功安装,则终端会输出显示java版本信息。

  • 配置环境变量,在系统变量中新建系统变量JAVA_HOME(Eclipse IDE基于该路径替代名字寻找java开发环境)。并且在path变量中新添加 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;注意分号必须正确输入。

  • 新建CLASSPATH环境变量,变量值为

    .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

    

  • 终端输入javac -version,如果配置正确,终端会输出显示java编译器的版本号。

建立Ardupilot工程代码编辑环境

  • 在开始菜单中输入PX4 Eclipse,选择并运行

  • 成功打开Eclipse,选择file->New->Make Project with Existing Code,填写工程名、代码存在路径,以及选择编译工具。

   

  • 选择菜单栏中的 Window -> Preferences -> General -> Editors -> Text Editors -> Insert spaces for tabs

  

   选择菜单栏中的 Windows -> Preferences -> C/C++ -> Code Style -> Formatter

     

按照上述步骤配置好环境之后,就可以使用Eclipse IDE愉快的读Ardupilot飞控源代码了。详情请见http://ardupilot.org/dev/docs/editing-the-code-with-eclipse.html

Eclipse 常用快捷键转 http://www.cnblogs.com/mq0036/p/4995390.html

基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建的更多相关文章

  1. Hadoop源码阅读环境搭建(IDEA)

    拿到一份Hadoop源码之后,经常关注的两件事情就是 1.怎么阅读?涉及IDEA和Eclipse工程搭建.IDEA搭建,选择源码,逐步导入即可:Eclipse可以选择后台生成工程,也可以选择IDE导入 ...

  2. Spring5源码阅读环境搭建-gradle构建编译

      前沿:Spring系列生态十分丰富,涉及到各个方面.但是作为Spring生态的核心基础Spring,是最重要的环节,需要理解Spring的设计原理,我们需要解读源码.   在构建Spring源码阅 ...

  3. Spring源码阅读环境搭建

    目录 安装gradle 导入Spring源码 创建测试模块my-test 其他问题 spring-aspects模块构建时报错 本文思维导图 本文将粗略的搭建一个Spring源码的阅读环境,为后面的源 ...

  4. react v16.12 源码阅读环境搭建

    搭建后的代码(Keep updated): https://github.com/lirongfei123/read-react 欢迎将源码阅读遇到的问题提到issue 环境搭建思路: 搭建一个web ...

  5. spring-framework-4.1.x源码阅读环境搭建(导入Eclipse)

    注意:搭建spring-framework-4.1.x源码 eclipse工作空间需要安装jdk8. spring-framework-4.1.x项目采用目前主流的项目管理工具gradle进行构建,至 ...

  6. Spring源码阅读笔记01:源码阅读环境准备

    1. 写在前面 对于做Java开发的同学来说,Spring就像是一条绕不过去的路,但是大多数也只是停留在对Spring的简单使用层面上,对于其背后的原理所知不多也不愿深究,关于这个问题,我在平时的生活 ...

  7. Spark源码分析环境搭建

    原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/3868718.html 本文主要分享一下如何构建Spark源码分析环境.以前主要使用eclipse来阅读源 ...

  8. 【转】Linux(ubuntu14.04)上编译Android4.4源码的环境搭建及编译全过程

    原文网址:http://jileniao.net/linux-android-building.html sublime text让我伤心.本来很信任sublime text的自动保存功能,之前使用一 ...

  9. Mac搭建Hadoop源码阅读环境

    1.本次Hadoop源码阅读环境使用的阅读工具是idea,Hadoop版本是2.7.3.需要安装的工具包括idea.jdk.maven.protobuf等 2.jdk,使用的版本是1.8版,在jdk官 ...

随机推荐

  1. 201521123110《java程序设计》第八周学习总结

    1. 本周学习总结 2. 书面作业 1.List中指定元素的删除 上课就交了,编写时主要用remove方法,然后Iterator的remove()方法可删除当前下标为i的元素后,该元素后的所有元素将往 ...

  2. 201521123031 《Java程序设计》第8周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 2. 书面作业 本次作业题集集合 1.List中指定元素的删除(题目4-1) 1.1 实验总结 答:实现con ...

  3. 201521123056 《Java程序设计》第10周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 2. 书面作业 本次PTA作业题集异常.多线程 1. finally 题目4-2 1.1 截图你的提交结果( ...

  4. 2017JAVA课程设计

    1.团队课程设计博客链接 http://www.cnblogs.com/ltykm/p/7063663.html 2.个人负责模块或任务说明 本人任务:定时器具体功能的实现 3.自己的代码提交记录截图 ...

  5. Geronimo tomcat: 在 Apache Geronimo 插件体系中将 Apache Tomcat 这个优秀的 Web 容器整合至其中

    Apache Geronimo 灵活的插件体系将 Tomcat, OpenJPA, OpenEJB, ActiveMQ 等第三方组件集成至其中.本文从多角度介绍了在 Apache Geronimo 中 ...

  6. mybatis-basedao的实现

    package com.yangwei.shop.dao; import java.util.HashMap; import java.util.List; import java.util.Map; ...

  7. 【Debian 8.8】Java 8 安装以及环境变量配置

    事实上可以分为简单的三个步骤: 下载 JDK 压缩包 解压压缩包 配置环境变量 需要注意的是: 所有命令默认在 root 权限下进行! 演示环境是 Debian 8.8 64位 (阿里云学生机) 1. ...

  8. js Date() 浏览器兼容问题解决

    一般 直接new Date() 是不会出现兼容性问题的,而 new Date(datetimeformatstring) 常常会出现浏览器兼容性问题,为什么,datetimeformatstring中 ...

  9. 中位数的和_KEY

    中位数的和 (number.pas/c/cpp) [题目描述] flower 有 N-1 个朋友,他们要一起玩一个游戏:首先确定三个非负整数 a,b,c,然后每个人依次在纸上写一个数,设第 i 个人写 ...

  10. 【DDD】领域驱动设计实践 —— Application层实现

    本文是DDD框架实现讲解的第二篇,主要介绍了DDD的Application层的实现,详细讲解了service.assemble的职责和实现.文末附有github地址.相比于<领域驱动设计> ...