概述
需要下载Ubuntu16.04 搭建APM 编译环境源码包的同学可从这里下载,源码中的.sh文件已做修改,包括APM源码和gcc软件包:
https://download.csdn.net/download/jlqiu2015/84515042
APM 版本4.0.7
参考:官网:https://ardupilot.org/dev/docs/building-setup-linux.html#building-setup-linux
帖子: https://blog.csdn.net/weixin_44622814/article/details/90021469
http://www.nufeichuiyun.com/?p=237
https://www.pythonheidong.com/blog/article/1317103/c4da7928551cf3c7c78e/
步骤:
- 安装ubuntu16.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 - 源码下载完成之后,建议备份,如压缩文件打包,避免后续修改源码乱套之后可以复原
- 在ardupilot 文件夹下配置编译环境, 由于官方指导文件中,在配置文件install-prereqs-ubuntu.sh中默认安装gcc-arm-none-eabi-6-2017-q2,先将此.sh文件中的gcc-arm-none-eabi-6-2017-q2修改为gcc-arm-none-eabi-4_9-2015q3,并手动安装gcc-arm-none-eabi-4_9-2015q3,将其放在/opt文件夹下,下载gcc-arm-none-eabi-4-9-2015q3连接如下:
https://download.csdn.net/download/jlqiu2015/84518300
然后执行以下命令:
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
-
如果第8步执行了.sh文件中的gcc文件修改和手动安装gcc,则不需要执行这一步。
查看查看computer/opt里是不是里是不是2015的的,有的问题会出现不是
2015 的 有的是 2017 的,这时候就需要将 2017 的删掉,然后再将2015的加进去,
这就涉及到另一个问题:在根目录下(computer )不能直接改掉,可以先将 2017 的转移出去,用 mv 移出去,然后将 2015 的这个放入 home 里,用 mv 再移进去,可以了,用下面的这个命令:
sudo mv ./gcc-arm-none-eabi-4_9-2015q3 /opt
注:
下载 gcc-arm-none-eabi-4_9-2015q3.ta.bz2 压缩包,需要先在 home下解压,命令如下:
tar -xjvf gcc-arm-none-eabi-4-9-2015q3.ta.bz2 -
如果第8步执行了.sh文件中的gcc文件修改和手动安装gcc,则不需要执行这一步。
添加bashrc环境,(这步就是比较关键的一步)
分别在两个中断输入gedit /.profile和gedit /.bashrc
将gedit ~/.profile下的倒数第二行export PATH=/opt/gcc-arm-none-eabi-4_9-2015q3/bin:$PATH复制到gedit~/.bashrc的最后一行,然后将它们都保存,关闭
下载gcc-arm-none-eabi-4-9-2015q3连接如下:
https://download.csdn.net/download/jlqiu2015/84518300 -
编译
一. 先配置飞控类型
// 查看所有支持的飞控类型,返回很多板子,选择自己的飞控板,比如Pixhawk
./waf list_boards
// 将编译目标设置为Pixhawk1版飞控,对应Pixhawk硬件
./waf configure --board Pixhawk1 # Pixhawk1二. 编译固件
./waf copter -
编译文件位置
编译好的文件保存在ardupilot/build/Pixhawk1/bin文件夹下,ardupilot.apj -
下载gcc-arm-none-eabi-4-9-2015q3连接如下:
https://download.csdn.net/download/jlqiu2015/84518300
最后
以上就是大方画板为你收集整理的完整版Ubuntu16.04 搭建APM 编译环境-源码包的全部内容,希望文章能够帮你解决完整版Ubuntu16.04 搭建APM 编译环境-源码包所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复