香橙派Zero2系列文章目录
一、香橙派Zero2设置开机连接wifi
二、香橙派Zero2获取Linux SDK源码
三、香橙派Zero2搭建Qt环境
文章目录
- 香橙派Zero2系列文章目录
- 前言
- 一、下载交叉编译工具
- 二、编译QT库
- 1.先去网站下载Qt的资源包
- 2.解压
- 3.开始移植:
- 4.编译:
- 5.安装:
- 三. 安装QT
- 1.配置QT
- 1.打开qt
- 2.点击 工具-选项-Kits-编译器
- 3.在编译器的Manual中添加GCC和C++路径为交叉编译工具的路径
- 4.在Qt Versions中添加qmake为编译好的qt目录
- 5.构建套件Kit设置
- 2.编译Qt任意例子
- 3.使用打包命令打包程序上传到OrangePi
- 4.成果
- 总结
前言
主要讲述了移植QT的过程
一、下载交叉编译工具
默认在香橙派篇2中,已经成功拉取Linux的SDK源码的情况下
如果失败的话,可以直接去官网下载交叉编译工具
cd orangepi-build//toolchains/
此处路径和上一篇的源码下载路径相同
ls 查看交叉编译工具链
选择gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu
home目录下创建user文件夹
复制到user里
路径根据实际情况填写
sudo cp -r gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/ /home/cheng/user/
改名字,赋予权限
mv gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/ gcc-aarch64-linux-gnu
sudo chmod -R 777 gcc-aarch64-linux-gnu
把/home/cheng/user/gcc-aarch64-linux-gnu/bin
添加到环境变量里面
sudo gedit /etc/profile
在末尾添加,视情况而定
export PATH="/home/cheng/user/gcc-aarch64-linux-gnu/bin:$PATH"
重启让环境变量生效,或者
reboot
source /etc/profile
查看是否安装成功
aarch64-linux-gnu-gcc -v
二、编译QT库
1.先去网站下载Qt的资源包
https://download.qt.io/archive/qt/5.9/5.9.0/single/
本次以5.9.0版本为主
2.解压
tar -xvf qt-everywhere-opensource-src-5.9.0.tar.xz
3.开始移植:
1、修改qmake.conf文件,如下:
gedit qt-everywhere-opensource-src-5.9.0/qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf
#
# qmake configuration for building with arm-linux-gnueabi-g++
#
MAKEFILE_GENERATOR = UNIX
CONFIG += incremental
QMAKE_INCREMENTAL_STYLE = sublib
include(../common/linux.conf)
include(../common/gcc-base-unix.conf)
include(../common/g++-unix.conf)
QT_QPA_DEFAULT_PLATFORM = linuxfb
QMAKE_CFLAGS_RELEASE += -O2 -march=armv8-a
QMAKE_CXXFLAGS_RELEASE += -O2 -march=armv8-a
# modifications to g++.conf
QMAKE_CC = aarch64-linux-gnu-gcc
QMAKE_CXX = aarch64-linux-gnu-g++
QMAKE_LINK = aarch64-linux-gnu-g++
QMAKE_LINK_SHLIB = aarch64-linux-gnu-g++
# modifications to linux.conf
QMAKE_AR = aarch64-linux-gnu-ar cqs
QMAKE_OBJCOPY = aarch64-linux-gnu-objcopy
QMAKE_NM = aarch64-linux-gnu-nm -P
QMAKE_STRIP = aarch64-linux-gnu-strip
load(qt_config)
创建一个脚本文件
touch qt_config.sh
sudo chmod 777 qt_config.sh
gedit qtconfig.sh
输入以下内容:(具体 .configure 配置详解请参考链接:https://blog.csdn.net/xi_gua_gua/article/details/53413930)
#!/bin/sh
./configure -prefix /opt/qt-5.9.0orangepizero2 \
-opensource \
-release \
-no-pch \
-confirm-license \
-xplatform linux-arm-gnueabi-g++ \
-shared \
-qt-zlib \
-no-iconv \
-no-gif \
-qt-libjpeg \
-no-opengl \
-no-cups \
-no-glib \
-no-dbus \
-no-rpath \
-no-sse2 -no-sse3 -no-ssse3 -no-sse4.1 -no-sse4.2 \
-no-avx \-nomake tools \
-qreal float \
-qt-libpng \
-no-compile-examples \
-skip qtdeclarative \
-no-openssl
-prefix /opt/qt-5.9.0orangepizero2 是编译后的安装目录。
如果运气好的话,一次编译就能过
4.编译:
make
编译成功
5.安装:
sudo make install
可以看到在/opt目录已经有了qt的内容
三. 安装QT
在里默认已经在虚拟机的Ubuntu上安装好了qt
1.配置QT
1.打开qt
2.点击 工具-选项-Kits-编译器
3.在编译器的Manual中添加GCC和C++路径为交叉编译工具的路径
交叉编译器的路径一开始我们就已经放好了
我放在了
/home/cheng/user/gcc-aarch64-linux-gnu
然后Apply一下
4.在Qt Versions中添加qmake为编译好的qt目录
5.构建套件Kit设置
注意c和c++的编译器设置
Qt version 这里选择前几部添加的 Qt5.9的设置
然后Apply-ok就可以了
2.编译Qt任意例子
第一个例子
/opt/qt-5.9.0orangepizero2/examples/widgets/mainwindows/mainwindow
第二个例子
/opt/qt-5.9.0orangepizero2/examples/widgets/widgets/stylesheet
都是只编译,不运行,运行也没用,没有特定环境,会运行失败
3.使用打包命令打包程序上传到OrangePi
程序打包上传到OrangePiZero2板子上,我把它放在了/home目录里面
把目录的权限改成板子上的用户和用户组
配置OrangePi PC2环境:
sudo vim /etc/profile
在最下边加入一下内容:
export QTDIR=/home/qt-5.9.0orangepizero2 #上边让你记住的路径
export QT_QPA_FONTDIR=$QTDIR/lib/fonts
export QT_QPA_PLATFORM_PLUGIN_PATH=$QTDIR/plugins/
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export QT_QPA_PLATFORM=linuxfb:fb=/dev/fb0
让环境变量生效
source /etc/profile
cd 到第一个例子所在目录
/home/qt-5.9.0orangepizero2/examples/widgets/mainwindows/mainwindow
chmod +x mainwindow
输入
./mainwindow -platform linuxfb
4.成果
可以看到板子上已经成功运行第一个列子
第二个例子
/home/qt-5.9.0orangepizero2/examples/widge/widgets/stylesheet
chmod +x stylesheet
输入
./stylesheet -platform linuxfb
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
运行过程中出现以下情况
而且打印界面报错:
这个是说找不到这个/home/qt-5.9.0orangepizero2/lib/fonts.
重新安装一下字体
sudo apt install ttf-wqy-zenhei
查看字体所在目录
fc-list :lang=zh
出现了一大堆
自己可以选择使用
我使用的是
/usr/share/fonts/truetype/wqy/
//该目录下有wqy-zenhei.ttc字体文件
修改一下profile文件
sudo vim /etc/profile
修改如图所示,把指定字体目录添加
然后重启板子
就发现以上的错误消失了
总结
主要介绍了如何在香橙派Zero2上移植QT