虚拟机中Ubuntu16.04与Arm开发板实现交叉编译

经过几天摸爬滚打,终于在高人的指导下完成了。所以写篇文章记录一下,方便以后参考。文中可能涉及到一些不详细甚至不正确的地方,因为很多地方我也不懂,只是照着网上的教程照做。

开发板型号为NanoPC-T3 Plus,采用三星八核Cortex-A53主控S5P6818,已安装友善之臂官方推荐的FriendlyCore轻量linux系统。


第一步:在虚拟机中配置交叉编译环境


1. 安装交叉编译器
基本上按照官方给出的教程就可以,交叉编译器有很多型号,要选择适合自己需求的。
虚拟机中Ubuntu16.04与Arm开发板实现交叉编译_第1张图片
这中间可能遇到的问题在下面统一列出,基本上都可以百度到。

2. 安装Qt交叉编译环境
官网提供了所需文件,如下图:

虚拟机中Ubuntu16.04与Arm开发板实现交叉编译_第2张图片

我用的是S5P6818 64bit的,这个Qt版本的下载地址:http://112.124.9.243/qtsdk-friendlyelec/s5p6818/

3. 安装qtcreator
在这里插入图片描述

网上有很多资源可以下载,下载好后拷贝到虚拟机中安装。
注意在安装Qt后并不能成功编译程序,提示找不到gl.h,这是由于系统中没有安装OpenGL库导致的,在控制台中输入以下命令安装OpenGL库及其工具。如果安装不成功,参考https://blog.csdn.net/qq_35451572/article/details/79516563中的方法更换源,我一开始不成功,更换清华源后成功。
apt-get install libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev

4. 配置qt编译环境
(1)虚拟机中Ubuntu16.04与Arm开发板实现交叉编译_第3张图片
(2)虚拟机中Ubuntu16.04与Arm开发板实现交叉编译_第4张图片
(3)虚拟机中Ubuntu16.04与Arm开发板实现交叉编译_第5张图片

5. 在qt中编译所用程序,生成可执行文件,稍后将该文件拷贝到共享文件夹中。
注意编译路径,在Qt界面左侧Projects中查看和设置。


第二步:通过nfs实现虚拟机与开发板之间的文件共享


基本上是按照这篇文章进行配置就可以:https://blog.csdn.net/CSDN_duomaomao/article/details/77822883


第三步:在开发板上运行共享文件夹中已经编译好的程序


注意在运行qt程序之前,需要先设置环境变量。
. setqt5env
然后运行程序即可
/.test。

遇到的问题及解决方法:
大部分问题可以百度到,少数问题要自己看一下错误提示思考思考,再搜索对应的解决方法。

  1. 找不到git命令,可以通过
    sudo apt-get install git
    命令来下载。但中间还是遇到了一些问题,有时网速太慢,下载一半中断之后再次下载提示错误,这时需要用命令
    sudo rm /var/cache/apt/archives/lock
    sudo rm /var/lib/dpkg/lock
    之后重新运行install,问题解决。

暂时想到这么多,以后再补充。

你可能感兴趣的:(虚拟机中Ubuntu16.04与Arm开发板实现交叉编译)