MissionPlanner编译过程

news2024/12/23 4:42:55

环境

windows 10
mission planner 1.3.80
visual studio 2022
git 2.22.0

下载源码

(已配置git和ssh)
从github上克隆源码

git clone git@github.com:ArduPilot/MissionPlanner.git

进入根目录

cd MissionPlanner

在根目录下的ExtLibs文件下是链接的其它github源码,此时部分为空文件夹,需要使用命令递归下载

git submodule update --init --recursive

网络好时一次就能下载完,一般需要多次运行以上命令,晚上下载会快些,运行以上命令直到敲击回车没有输出
使用 git status查看是否更新完成

Visual Studio 2022 安装

使用必应搜索visual studio 2022,第一个网站就是官网,
下载社区版,强大,够用 VisualStudioSetup.exe,只有3.76M
双击后会自动联网下载安装,非常方便,给微软点赞

编译

打开Visual Stuio 2022
打开项目或解决方案
在这里插入图片描述

找到项目根目录下的.sln后缀的文件,打开即可
在这里插入图片描述

配置mission planner为启动项
在这里插入图片描述

在这里插入图片描述
编译,找到 “生成”, 点击“生成解决方案”
在这里插入图片描述
编译完成,错误为0,警告忽略在这里插入图片描述
运行,点击“启动”
在这里插入图片描述
继续调试
在这里插入图片描述
完成,有一个软件窗口和命令行窗口
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1036581.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

pymysql简介以及安装

视频版教程 Python操作Mysql数据库之pymysql模块技术 前面基础课程介绍了使用文件来保存数据,这种方式虽然简单、易用,但只适用于保存一些格式简单、数据量不太大的数据。对于数据量巨大且具有复杂关系的数据,当然还是推荐使用数据库进行保存…

79、SpringBoot 整合 R2DBC --- R2DBC 就是 JDBC 的 反应式版本, R2DBC 是 JDBC 的升级版。

★ 何谓R2DBC R2DBC 就是 JDBC 的 反应式版本, R2DBC 是 JDBC 的升级版。 R2DBC 是 Reactive Relational Database Connectivity (关系型数据库的响应式连接) 的缩写 反应式的就是类似于消息发布者和订阅者,有消息就进行推送。R2DBC中DAO接口中方法的…

Rust vs C++ 深度比较

Rust由于其强大的安全性受到大量关注,被认为C在系统编程领域最强大的挑战者。本文从语言、框架等方面比较了两者的优缺点。原文: Rust vs C: An in-depth language comparison Rust和C的比较是开发人员最近的热门话题,两者之间有许多相似之处&#xff0c…

Linux复习-安装与熟悉环境(一)

这里写目录标题 虚拟机ubuntu系统配置镜像Linux命令vi编辑器3个模式光标命令vi模式切换命令vi拷贝与粘贴命令vi保存和退出命令vi的查找命令vi替换命令 末行模式复制、粘贴、剪切gcc编译器 虚拟机 VMware16 官网下载:vmware官网 网盘下载: 链接&#xff…

共享文件夹设置密码怎么做?3招轻松为文件上锁!

“我们小组里建了一个共享文件夹,为了安全起见,想给文件夹设置一个密码,但是不知道应该怎么操作,有没有大佬可以教教我呀!” 在我们的工作中,经常都会用到共享文件,这样可以让我们的工作方便快捷…

Jmeter接口测试

前言: 本文主要针对http接口进行测试,使用Jmeter工具实现。 Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,因此,本次直接使用Jmeter工具来完成对Http接口的测试。 1.介绍什么是…

负载均衡技术全景:理论、实践与案例研究

在当今的互联网时代,随着用户数量的增长和业务规模的扩大,单一的服务器已经无法满足高并发、大流量的需求。为了解决这个问题,负载均衡技术应运而生。负载均衡可以将大量的网络请求分发到多个服务器上进行处理,从而提高系统的处理…

Qt-双链表的插入及排序

输入一个二维链表将其排序后转化成一维链表 要求:链表自定义不得使用模板库 链接:私信

Spring Cloud Gateway快速入门(一)——网关简介

文章目录 前言一、什么是网关1.1 gateway的特点1.2 为什么要使用gateway 二、使用 Nginx 实现网关服务什么是网关服务?为什么选择 Nginx 作为网关服务?如何使用 Nginx 实现网关服务?1. 安装 Nginx2. 配置 Nginx3. 启动 Nginx4. 测试网关服务 …

八大排序(二)快速排序

一、快速排序的思想 快速排序是Hoare于1962年提出的一种二叉树结构的交换排序方法,其基本思想为:任取待排序元素序列中的某元素作为基准值,按照该排序码将待排序集合分割成两子序列,左子序列中所有元素均小于基准值,右…

RK3568平台开发系列讲解(工具命令篇)ADB的安装

🚀返回专栏总目录 文章目录 一、ADB介绍二、Windows 下安装 adb 工具沉淀、分享、成长,让自己和他人都能有所收获!😄 一、ADB介绍 adb 全称 Android Debug Bridge,直译过来就是 Android 调试桥,它是一个通用的命令行工具。adb 做为 Android 设备与 PC 端连接的一个桥梁…

软件设计模式系列之十四——代理模式

1 模式的定义 代理模式是一种结构型设计模式,它允许一个对象(代理)充当另一个对象的接口,以控制对该对象的访问。代理模式通常用于控制对真实对象的访问,以实现一些额外的功能,例如延迟加载、权限控制、日…

ORM模型与表的映射

ORM模型与表的映射 ORM模型 对象关系映射(ObjectRelationship:Mapping),简称 ORM,是一种可以用 Python 面向对象的方式来操作关系型数据库的技术,具有可以映射到数据库表能力的 Python 类我们称之为 ORM 模型。一个 ORM 模型与数据库中一个…

基于SpringBoot的的师生健康信息管理系统

目录 前言 一、技术栈 二、系统功能介绍 管理员功能模块 学生功能模块 教师功能模块 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着移动应用技术的发展,越来越多的用户借助于移动手机、电脑完成生活中的事务,许多的传统行业也…

华为NFC设置教程(门禁卡/公交卡/校园卡等)

今天把华为NFC设置教程分享给大家 出门带门禁卡、校园卡、银行卡、身份证……东西又多,携带又麻烦,还容易搞丢,有没有一种方法可以把它们都装下?有!只要一部手机,出门不带卡包,各种证件&#x…

SpringCloud Alibaba 入门到精通 - Sentinel

SpringCloud Alibaba 入门到精通 - Sentinel 一、基础结构搭建1.父工程创建2.子工程创建 二、Sentinel的整合SpringCloud1.微服务可能存在的问题2.SpringCloud集成Sentinel搭建Dashboard3 SpringCloud 整合Sentinel 三、服务降级1 服务降级-Sentinel2 Sentinel 整合 OpenFeign3…

算法之斐波那契数列

10.1 斐波那契数列 题目链接 牛客网 题目描述 求斐波那契数列的第 n 项&#xff0c;n < 39。 解题思路 如果使用递归求解&#xff0c;会重复计算一些子问题。例如&#xff0c;计算 f(4) 需要计算 f(3) 和 f(2)&#xff0c;计算 f(3) 需要计算 f(2) 和 f(1)&#xff0c;…

好物周刊#9:AI 学习必备资料

村雨遥的好物周刊&#xff0c;记录每周看到的有价值的信息&#xff0c;主要针对计算机领域&#xff0c;每周五发布。 一、项目 1. PicX 一款基于 GitHub API 开发的图床工具&#xff0c;提供图片上传托管、生成图片链接和常用图片工具箱服务。只需要申请一个 Github Token&am…

[Python]Open CV 基础知识学习

Open CV 在图像处理与目标检测中应用比较广&#xff0c;因此来学习一下基础知识。 Open CV 的安装: 在anaconda search中找opencv&#xff0c; 然后anaconda会自动安装opencv和关联的库 Open CV 基本操作: 注意python 中导入opencv的包名是cv2 读取图片: imread有两个参数…

力扣 -- 215. 数组中的第K个最大元素

解题步骤&#xff1a; 参考代码&#xff1a; class Solution { public:int QuickSelectSort(vector<int>& nums,int begin,int end,int k){//随机选keyint keynums[beginrand()%(end-begin1)];//left在左端点前一个位置int leftbegin-1;//right在右端点后一个位置in…