最近翻出一个老电脑,64位,安装了ubuntu18.04系统,也是64位系统,在给APM搭建编译环境的时候,趟过很多坑,尝试了很多方法,最终编译成功,给入门的兄弟参考。由于大家安装的Ubuntu系统配置环境有区别,不少帖子都是缺少一些步骤的,我这里总结了比较全的流程。ubuntu18.04系统编译APM比较简单,省去替换gcc文件步骤
APM 版本4.0.7
参考:官网:https://ardupilot.org/dev
帖子:
https://www.pythonheidong.com/blog/article/1317103/c4da7928551cf3c7c78e/
步骤:
-
安装ubuntu18.04, 软件源选择aliyun
-
加入组,然后注销再登入
sudo usermod -a -G dialout $USER -
安装git
先在终端依次输入
sudo apt-get update
sudo apt-get install git
sudo apt-get install gitk git-gui -
在home 根目录下克隆源码
git clone https://github.com/your-github-userid/ardupilot -
切换到分支,这里以copter4.0.7 为例
cd ardupilot
git checkout Copter-4.0.7 -
克隆关联组件,反复执行此命令,直到下载完成为止
git submodule update --init –recursive -
源码下载完成之后,建议备份,如压缩文件打包,避免后续修改源码乱套之后可以复原
-
然后执行以下命令:
Tools/environment_install/install-prereqs-ubuntu.sh -y -
执行以上命令过程中会自动安装各种软件,但关于python 的软件会有缺失,ubuntu16 自带
python2.7 软件,需安装python3 以上软件,
sudo apt-get install python3
用以下命令查看python 和python3 地址
which python //返回/usr/bin/python
which python3 //返回/usr/bin/python3
接下来我们写一个配置文件
gedit ~/.bash_profile
往里写入以下语句并保存
PATH="/usr/bin:${PATH}"
export PATH
alias python="/usr/bin/python3"
添加环境变量
source ~/.bash_profile
安装pip
Sudo apt-get install python3-pip 然后更新pip包 python -m pip install --upgrade pip 然后通过pip安装缺少的包,如future, empy pip install future empy -
再次执行第再次执行第8步骤,直至没有报错步骤,直至没有报错为止为止
-
加入环境变量,然后登出登入加入环境变量,然后登出登入
. ~/.profile -
编译
一. 先配置飞控类型
// 查看所有支持的飞控类型,返回很多板子,选择自己的飞控板,比如Pixhawk
./waf list_boards
// 将编译目标设置为Pixhawk1版飞控,对应Pixhawk硬件
./waf configure --board Pixhawk1 # Pixhawk1二. 编译固件
./waf copter -
编译文件位置
编译好的文件保存在ardupilot/build/Pixhawk1/bin文件夹下,ardupilot.apj