经历了许久的磨难,我终于搭建成功PX4开发环境,入了太多的坑,这里我一一介绍一番。今天笔者就来总结一下ubuntu系统下搭建PX4开发环境的过程。亲测 、真实有效!!!!有效!!!!Let’s go.
别问为什么,装就对了。 你非要问的话,就是创建独立用户的目的是这样可以让开发环境分离开来,避免出现不同用户间的版本冲突等情况。将用户加入dialout用户组的目的是dialout拥有对串口tty的操作权限
sudo usermod -a -G dialout $USER
注意:注销后重新登录!!!
#更新软件源列表:
sudo apt-get update -y#安装git、zip、cmake、qt、ninja等必用软件包:
sudo apt-get install git zip qtcreator cmake build-essential genromfs ninja-build exiftool -y注:添加源操作一般成功后会跳出一个“OK”,update成功后会有个“done”。
用户在ubuntu系统下编译的固件要在arm系统中运行,所以一定会用到交叉编译器,先到下面这个网站下一个比较高版本的安装文件:
https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads
亲测有效,强烈建议2017-q4版本!!!
解压缩:
tar -jxf gcc-arm-none-eabi-7-2017-q4-major-linux.tar.bz2配置编译环境,将编译器的路径放到.bashrc或者.profile文件中:
gedit .bashrc #在最后一行加入下列代码。注意:gcc-arm-none-eabi-7-2017-q4-major替换成你的export PATH=$HOME/gcc-arm-none-eabi-7-2017-q4-major/bin:$PATH查看编译器版本确认是否配置成功:
echo $PATH arm-none-eabi-gcc --version运行指令且结果如下:
环境配置检测
Pixhawk 4: make px4_fmu-v5_default Pixracer: make px4_fmu-v4_default Pixhawk 3 Pro: make px4_fmu-v4pro_default Pixhawk Mini: make px4_fmu-v3_default Pixhawk 2: make px4_fmu-v3_default mRo Pixhawk: make px4_fmu-v3_default (supports 2MB Flash) HKPilot32: make px4_fmu-v2_default Pixfalcon: make px4_fmu-v2_default Dropix: make px4_fmu-v2_default MindPX/MindRacer: make airmind_mindpx-v2_default mRo X-2.1: make auav_x21_default Crazyflie 2.0: make bitcraze_crazyflie_default Intel® Aero Ready to Fly Drone: make intel_aerofc-v1_default Pixhawk 1: make px4_fmu-v2_default
1.无法make,或者如下图: 方案:
#make是操作字符 px4fmu是固件名称 -v2是版本号 _default是默认配置 #实际make之后是一个文件名称,需要编译的模块都在其中 #可以输入make p 然后按Tab键,会跳出一连串p开头的文件
2.缺少模板 方案: 缺什么补什么,根据提示补模板。中途会出现如下问题: 方案:终端输入如下:
python2 --version #查看python2安装版本 python3 --version #查看python3安装版本 python --version#查看系统正在使用的版本
现在改为python3
终端输入:
echo alias python=python3 >> ~/.bashrc
source一下:
source ~/.bashrc
版本查看:
python --version
如下图: 紧接着升级pip,
python -m pip install --upgrade pip
3.交叉环境出错
重装交叉环境,切记强烈建议2017-q4版本!!!
第一次发博客,尽量让入pix坑的小伙伴少走弯路吧,我是C先森。。。
