1、安装Msys2

下载Msys2,下载地址 https://msys2.github.io,注意根据笔记本的型号选择32bit或64bit。

2、添加LibrePilot MinGW库

在 /etc/pacman.conf文件的尾部添加如下代码,可以手动添加,添加后保存即可。

[librepilot-mingw]
SigLevel = Optional TrustAll
Server = http://download.librepilot.org/repo/mingw
 
也可以在Msys2中通过命令行添加,代码如下:
echo "[librepilot-mingw]" >> /etc/pacman.conf
echo "SigLevel = Optional TrustAll" >> /etc/pacman.conf
echo "Server = http://download.librepilot.org/repo/mingw" >> /etc/pacman.conf

3、安装所需的模块

注意此步骤不在Msys2中进行,而是根据你的电脑机型选择32bit的MinGW-w64 Win32 Shell或者64bit的MinGW-w64 Win64 Shell进行操作。

For 32 bit:

pacman -Sy
pacman -S --needed git unzip tar
pacman -S --needed mingw-w64-i686-toolchain
pacman -S --needed mingw-w64-i686-ccache
pacman -S --needed mingw-w64-i686-ntldd
pacman -S --needed mingw-w64-i686-qt5
pacman -S --needed mingw-w64-i686-SDL
pacman -S --needed mingw-w64-i686-mesa
pacman -S --needed mingw-w64-i686-openssl
pacman -S --needed mingw-w64-i686-gdal-minimal
pacman -S --needed mingw-w64-i686-OpenSceneGraph
pacman -S --needed mingw-w64-i686-osgearth
pacman -S --needed mingw-w64-i686-graphite2
pacman -S --needed mingw-w64-i686-nghttp2
pacman -S --needed mingw-w64-i686-gst-plugins-base
pacman -S --needed mingw-w64-i686-gst-plugins-good
pacman -S --needed mingw-w64-i686-gst-plugins-bad
pacman -S --needed mingw-w64-i686-gst-plugins-ugly
pacman -S --needed mingw-w64-i686-gst-libav

推荐安装的debug包:

pacman -S --needed mingw-w64-i686-OpenSceneGraph-debug
pacman -S --needed mingw-w64-i686-osgearth-debug

For 64 bit:

pacman -Sy
pacman -S --needed git unzip tar
pacman -S --needed mingw-w64-x86_64-toolchain
pacman -S --needed mingw-w64-x86_64-ccache
pacman -S --needed mingw-w64-x86_64-ntldd
pacman -S --needed mingw-w64-x86_64-qt5
pacman -S --needed mingw-w64-x86_64-SDL
pacman -S --needed mingw-w64-x86_64-mesa
pacman -S --needed mingw-w64-x86_64-openssl
pacman -S --needed mingw-w64-x86_64-gdal-minimal
pacman -S --needed mingw-w64-x86_64-OpenSceneGraph
pacman -S --needed mingw-w64-x86_64-osgearth
pacman -S --needed mingw-w64-x86_64-gst-plugins-base
pacman -S --needed mingw-w64-x86_64-gst-plugins-good
pacman -S --needed mingw-w64-x86_64-gst-plugins-bad
pacman -S --needed mingw-w64-x86_64-gst-plugins-ugly
pacman -S --needed mingw-w64-x86_64-gst-libav

推荐安装的debug包:

pacman -S --needed mingw-w64-x86_64-OpenSceneGraph-debug
pacman -S --needed mingw-w64-x86_64-osgearth-debug

4、获取Librepilot源代码

注意此步骤依然不在Msys2中进行,而是根据你的电脑机型选择32bit的MinGW-w64 Win32 Shell或者64bit的MinGW-w64 Win64 Shell进行操作。

命令如下:

cd ~
git clone https://bitbucket.org/librepilot/librepilot.git

获取完成后,在安装路径文件夹下应该有一个home文件夹,里面是用户,进入后应该有一个librepilot文件夹,该文件夹下即为获取的源代码,可以通过sourceInsight查看源码。

5、安装toolchain

通过cd librepilot切换到该文件夹下,在该文件夹下安装toolchain。

cd librepilot
mingw32-make all_sdk_install

一个安装如下的7个toolchain,注:该过程有可能出现error,是因为网络传输数据出现校验不通过的情况,需反复执行mingw32-make all_sdk_install命令,直到完全没有错误为止,此过程中保存网络通畅。

Tool
Approx. size
Used for
Arm compiler ~94Mb

firmware build

Nsis ~2,1Mb Windows installer
Mesa ~13Mb OpenGL software driver
ccache ~350Kb Build faster
gtest ~1,1Mb  
uncrustify ~250Kb Format code
doxygen ~4Mb Documentation

6、对LibrePilot软件进行编译

注意此步骤依然不在Msys2中进行,而是根据你的电脑机型选择32bit的MinGW-w64 Win32 Shell或者64bit的MinGW-w64 Win64 Shell进行操作。

命令如下:

mingw32-make package

注意:此过程比较缓慢,编译时间较长,需要耐心等待。

编译完成后,在~/librepilot/build/路径下应该出现一个地面站软件安装包,如下:

7、恭喜完成编译 !

到这一步就应该恭喜你了,完成了全部的编译过程。编译package安装包的时间比较长,后期在修改源码的基础上只需对修改的模块进行编译,这样会比较节省时间。

Librepilot-Windows编译环境的搭建的更多相关文章

  1. Windows下QT4.8.4编译环境的搭建(转载http://blog.csdn.net/bestgonghuibin/article/details/38933141)

    开始使用QT了,所以第一步就是把环境搭起来,这里小记一下,以免以后忘记. 1. 下载安装文件 要使用QT功能,那么必须要下载QT的源码,还必须要一个是用QT的编译环境,可以是VS2010,也可以是专用 ...

  2. Java编译环境的搭建(eclipse)

    每用一种语言开发,要搭建其编译和开发环境,我们废话不说,立刻来看看Java开发环境的搭建. 1.安装JDK和JRE Windows环境下: a.去Oracle官网下载对应版本的JDK安装包,http: ...

  3. Windows XP环境下 搭建Android NDK环境

    搭建Android NDK环境 Windows XP环境下 1 一些下载 ① NDK r7:http://developer.android.com/sdk/ndk/index.html ② cygw ...

  4. WebAssembly学习(二):Windows10下WebAssembly C/C++编译环境的搭建与Hello World尝试

    首先,不论是在Windows.Linux还是Mac上,Webassembly的编译都是主要依赖于Emscripten SDK这个工具的.但是,在这里必须要吐槽一下,不论是WebAssembly官网.W ...

  5. 第一篇:《UNIX 网络编程 第二版》编译环境的搭建

    第一步:搭建基本的编译环境 安装gcc, g++, bulid-essential等编译软件 第二步:下载本书示例源码包 第三步:解压下载到的包并放在用户主目录中 第四步:进入包内并执行以下命令 su ...

  6. 第一篇:《UNIX 环境高级编程》编译环境的搭建

    第一步:搭建基本的编译环境 安装gcc, g++, bulid-essential等编译软件 第二步:下载本书示例源码包 可在这里下载 www.apuenook.com 第三步:解压下载到的包并放在用 ...

  7. 《UNIX 环境高级编程》编译环境的搭建( 运行本专栏代码必读 )

    第一步:搭建基本的编译环境 安装gcc, g++, bulid-essential等编译软件 第二步:下载本书示例源码包 可在这里下载 www.apuenook.com 第三步:解压下载到的包并放在用 ...

  8. 《UNIX 网络编程 第二版》编译环境的搭建( 运行本专栏代码必读 )

    第一步:搭建基本的编译环境 安装gcc, g++, bulid-essential等编译软件 第二步:下载本书示例源码包 可在这里下载http://ishare.iask.sina.com.cn/f/ ...

  9. 【Linux编译环境的搭建】Linux都没有,怎么学Linux编程?

    本文准备从0开始,一步步搭建一套属于自己的多节点Linux系统环境,这将是后续学Linux.用Linux.Linux环境编程.应用和项目部署.工具实验等一系列学习和实践的基石,希望对小伙伴们有帮助. ...

  10. ESP32 windows开发环境的搭建(官方方法)

    首先保证电脑中的已经下载了git客户端,没有的自行去https://git-scm.com/下载 STEP1: 获得编译工具链 Windows没有内置的“make”环境,所以安装工具链你将需要一个兼容 ...

随机推荐

  1. emqtt emq 的用户密码认证

    MQTT 认证设置 EMQ 消息服务器认证由一系列认证插件(Plugin)提供,系统支持按用户名密码.ClientID 或匿名认证. 系统默认开启匿名认证(anonymous),通过加载认证插件可开启 ...

  2. go-ethereum开发问题

    1. abigen 参考文档(Native DApps: Go bindings to Ethereum contracts) abigen --sol token.sol --pkg token - ...

  3. flutter tabbar创建与显示

    效果图 main.dart import 'package:flutter/material.dart'; import 'pages/index_page.dart'; void main() =& ...

  4. cocoapods [!] Unable to find a pod with name, author, summary, or description matching `xx`

    pod search MJRefresh的时候报错 [!] Unable to find a pod with name, author, summary, or description matchi ...

  5. python调用不同目录中类的终极方法

    1.在需要导入别的类包中加入这两行代码 BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))sys.path.a ...

  6. git 合并远程分支

    假设远程分支 dev-by-wbw  本地分支dev-by-wgg 在本地新建一个与远程的分支dev-by-wbw相同(被合并的版本)的分支dev-by-wbw git checkout - b or ...

  7. python__005

    一.字符串格式化 #字符串的拼接#msg='i am a best boy'+'非常帅'print(msg)name=input('name:')hobby=input(('hobby:'))age= ...

  8. 实验仓 #779.【CSP2019模拟 Day 1】A题

    题目传送门 考场上面做了一个暴力的做法,然后,然后他$WA$了. emmm...($T$就算了吧,$WA$了算什么事啊) 好吧,这道题,其实好像...是一道思维题来着. 如果出现了这样两个打X的格子上 ...

  9. 【神经网络与深度学习】Caffe使用step by step:使用自己数据对已经训练好的模型进行finetuning

    在经过前面Caffe框架的搭建以及caffe基本框架的了解之后,接下来就要回到正题:使用caffe来进行模型的训练. 但如果对caffe并不是特别熟悉的话,从头开始训练一个模型会花费很多时间和精力,需 ...

  10. Android自动化测试(UiAutomator)

    一.一个BUG引发的问题   如果研发过程中有一个BUG:“不断的切换手机语言出现花屏现象”.这个问题我们如何验证呢?我想,最好的方式应该是自动化测试.    那么,自动化测试可以完成哪些任务呢?  ...