px4编译后的源码下载_px4开源代码

hacker|
128

文章目录:

ubuntu 环境下怎样编译pixhawk px4源码

Ubuntu环境下Pixhawk原生固件PX4的编译

分类:无人机ubuntu代码编译Pixhawk

(3946) (6)

Ubuntu下Pixhawk原生固件PX4的编译这个问题困扰了两天时间,可能是博主脑力不够,主要是环境搭建不起来,主要原因应该是路径的原因,最后在大师傅的帮助下还好成功将路径搭建好,成功编译。

下面就跟大家分享一下环境搭建的过程。

1.操作环境

每次写文章,环境一定要介绍的,不同的环境总会出现不同的问题

我的环境是Windows下面安装虚拟机,虚拟机跑Ubuntu

Windows:win10 64位

虚拟机:VMware Workstation 12 Pro 12.1.0 build-3272444

Ubuntu:Ubuntu15.10

2.编译环境搭建

(1)权限设置

官方提示:

Warning Never ever fix permission problems by using 'sudo'. It will create more permission problems in the process and require a system reinstallation to fix them.

意思是你会遇到权限问题,不要用sudo解决,那样会带来更多问题,但是我没听他的,我没用,最后也是实现了

官方提供指令

[plain] view plain copy

然后注销,重新登录生效

(2)安装

更新包列表,安装下面编译PX4的依赖包。PX4主要支持的系列:

NuttX based hardware: Pixhawk, Pixfalcon

Snapdragon Flight hardware: Snapdragon

Raspberry Pi hardware: Raspberry Pi 2

Host simulation: jMAVSim SITL and Gazebo SITL

注意:安装Ninja Build System可以比make更快进行编译。如果安装了它就会自动选择使用它进行编译。

[plain] view plain copy

卸载模式管理器

[plain] view plain copy

更新包列表和安装下面的依赖包。务必安装指定的版本的包

[plain] view plain copy

上面代码中红色部分大家需要一高警惕,gcc-arm-none-eabi版本导致PX4/Firmware编译错误,现在apt-get安装的gcc-arm-none-eabi基本上是4.9的版本,但是这个固件需要gcc-arm-none-eabi 4.8de 版本,所以最后安装好以后,查看你的gcc-arm-none-eabi版本,如果是4.9需要手动安装4.8的版本,安装gcc-arm-none-eabi 4.8的版本的方法如下:

[plain] view plain copy

【Warning】上面红色的路径一定要添加正确,不然问题很多,我第一次就输入错误,结果结果开不了机了,反复输入密码。博主装的是Ubuntu 64位系统,而上述arm-none-eabi是直接下载的编译好的32位,还需要安装一个东西

[plain] view plain copy

可以检查arm-none-eabi 4.8.4是否安装成功,输入以下指令:

[plain] view plain copy

如果出现如上信息,交叉编译环境搭建就搭建成功了

(3)代码编译

根据PX4中文维基官网教程。

安装Git

[plain] view plain copy

下载代码

[plain] view plain copy

初始化

先进入Firmware文件夹,进而进行初始化、更新子模块操作,耐心的等待……

[plain] view plain copy

权限

编译时会遇到权限问题,执行指令

[plain] view plain copy

-R 是对文件下面包含的子文件权限问题,* 是对所有文件的权限问题

编译

[plain] view plain copy

注意到“make”是一个字符命令编译工具,“px4fmu-v2”是硬件版本,“default”是默认配置,所有的PX4编译目标遵循这个规则。

最后附一张编译成功的代码,如果这样你还有问题,请给我留言。

[plain] view plain copy

-- nuttx-px4fmu-v2-default

-- The ASM compiler identification is GNU

-- Found assembler: /opt/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc

-- Found PythonInterp: /usr/bin/python (found version "2.7.10")

-- Using C++03

-- Release build type: RelWithDebInfo

-- Adding UAVCAN STM32 platform driver

-- Configuring done

-- Generating done

-- Build files have been written to: /home/lihongwei/Documents/Firmware/build_px4fmu-v2_default

#+@Tools/check_submodules.sh

PX4 CONFIG: px4fmu-v2_default

Scanning dependencies of target git_mavlink

Scanning dependencies of target git_uavcan

Scanning dependencies of target git_gencpp

Scanning dependencies of target git_genmsg

[ 0%] Generating git_init_mavlink_include_mavlink_v1.0.stamp

[ 0%] Generating git_init_src_modules_uavcan_libuavcan.stamp

[ 0%] Generating git_init_Tools_genmsg.stamp

[ 0%] Generating git_init_Tools_gencpp.stamp

[ 0%] Built target git_uavcan

[ 0%] Built target git_mavlink

[ 0%] Built target git_genmsg

[ 0%] Built target git_gencpp

px4flow源代码用什么软件查看

opencv都带有这个函数的代码,你在用的时候,选择函数,然后右键选择”go to denifition of cvCalOpticalFlowHS"---然后就会跳 到定义cvCalOpticalFlowHS的定义文件,就会跳到cv.h头文件来(说明cvCalOpticalFlowHS在cv.h文件中定义的),然后你去cv.cpp文件,按"Ctrl+F" 输入函数名进行搜索,就能找到cvCalOpticalFlowHS函数的源文件了。1、首先要熟悉openCV安装目录,例如我的安装目录是F:\program files\opencv2.3.1。在这个目录下面还有很多子目录:3rdparty、android、build,data、doc、include、modules、samples和很多cmake文件。对于编程来说,仅仅需要build这一个文件夹就可以了,因为编程环境的配置只与这一个目录有关,如:包含目录配置、库目录配置build目录是编译生成的目录,就是用openCV源代码编译生成的2进制库文件集(dll、lib和入口头文件include)。 2、那其他文件夹下的文件都是干嘛用的呢?其实源代码就包含在这些文件夹下面,因为build文件夹就是在其他文件夹的基础上CMake编译生成的例如,core文件夹下就包含了基本数据类型的定义,imgproc文件夹下包含了常用的数字图像处理函数源代码:如cvCanny()、cvSobel()。3、用...

怎样用eclipse编译 pixhawk px4飞控源码

在window-proferences的设置对 project不起作用需要在 project- properties 中对 c/c++ make project 的 binary parse 进行设置到 win 下。

pixhawk 开发环境要安装ubuntu吗

1.首先安装Ubuntu 14.04 LTS,一路默认安装就可以了,具体的过程可以自己上网查询,64位与32位没有区别。Linux下是区分大小写的,在使用过程中一定注意大小写字母,安装过程中分多次要求输入密码!

安装可选软件:(终端启用键Ctrl+Alt+T)

安装五笔输入法软件

sudo apt-get install ibus-table-wubi

安装NotePad++,查看源码工具,我是在Linux下查看代码用的,你可以自己选择其它的

sudo add-apt-repository ppa:notepadqq-team/notepadqq

sudo apt-get update

sudo apt-get install notepadqq

NotePad++的卸载方法:

sudo apt-get remove notepadqq

sudo add-apt-repository --removeppa:notepadqq-team/notepadqq

其它软件根据自己的情况自己安装。

2.将当前用户添加进dialout组中,应该是获取一定的权限

sudo usermod -a -G dialout $USER

3.git源码到本地

首先安装git软件

sudo apt-get install git

创建源码目录

mkdir -p~/src

cd ~/src

git软件源码

cd Firmware

git submodule update --init--recursive

cd ..

4.安装cmake,这个很重要,安装完成后可以使用cmake -v来查看是否成功!

sudo add-apt-repository ppa:george-edison55/cmake-3.x -y

sudo apt-get update

sudo apt-get install cmake

5.安装python相关,注意“\”是续行符号,与下一行是一个命令

sudo apt-get install python-argparse git-core wget zip \

python-empy qtcreator cmake build-essential -y

6.删除串口模式管理器

sudo apt-get remove modemmanager

7.更新软件包

sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded -y

sudo apt-get update

注意:下在这些是一个命令,“\”是续行符号,与下一行是一个命令,千万不能分开,复制命令时可以不复制 \,自己手工加上\

sudo apt-get install python-serial openocd \

flex bison libncurses5-dev autoconf texinfobuild-essential \

libftdi-dev libtool zlib1g-dev genromfs \

python-empy

8.安装对应的GCC

Ubuntu 14.04 (Trusty) and 14.10,执行以下命令,其它版本暂时不了解,自己Baidu吧

sudo apt-get install gcc-arm-none-eabi -y

编译源码,V2是指的Pixhawk

cdFirmware

makepx4fmu-v2_default

首先编译需要时间20分钟,网速决定!

显示以下为编译成功:

LinkingCXX executable firmware_nuttx

[100%]Built target firmware_nuttx

Scanningdependencies of target build_firmware_px4fmu-v2

[100%]Generating nuttx-px4fmu-v2-default.px4

[100%]Built target build_firmware_px4fmu-v2

执行make px4fmu-v2_default 进行编译,过程中会自动git需要的文件。

备注,下面命令与此编译无关

安装交叉编译环境

sudo apt-get install rpm

sudo apt-get install gdb

sudo apt-get install genromfs

linux程序编译px4,怎么找原因

大部分linux系统都安装了g++(gcc) 可以在linux命令行模式下用g++ 的方法编译 其实有很多跨平台的IDE如codeblocks,还有一些强大的文本编辑器如gvim都可以在linux下输入,编译,调试 linux是许多oier的选择

如何升级px4-toolchin中的arm-none-eabi

eabi是arm新的二进制文件接口的标准,elf是二进制目标文件的格式,而名称为arm-elf的编译器一般是老的OABI接口,裸奔程序到影响不大,在嵌入式linux中,要注意系统的接口,是老的oabi还是eabi,新的内核一般是eabi接口,但编译内核时会有兼用oabi接口的选项,默认是没选择的,需要的话编译时需要手动选上

2条大神的评论

  • avatar
    访客 2022-07-07 上午 12:42:12

    _gencpppx4flow源代码用什么软件查看opencv都带有这个函数的代码,你在用的时候,选择函数,然后右键选择”go to denifition of cvCalOpticalFlowHS"---然后就会跳 到定义cvCalOpti

  • avatar
    访客 2022-07-07 上午 04:52:24

    包含了常用的数字图像处理函数源代码:如cvCanny()、cvSobel()。3、用...怎样用eclipse编译 pixhawk px4飞控源码在window-proferences的设置

发表评论