Qt.5.9.6移植
Posted focus-flying
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt.5.9.6移植相关的知识,希望对你有一定的参考价值。
- 工具及软件包
- 交叉编译工具链
arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 - 软件包
dbus-1.10.0.tar.gz
openssl-1.1.0.tar.gz
tslib-1.15.tar.gz
Native_SDK-3.5.zip [此SDK为PowerVR的SDK,用来编译OpenGL/OpenGL ES支持]
qt-everywhere-opensource-src-5.9.6.tar.gz
- 交叉编译工具链
- 修改qmake.conf文件
进入目录: qt-everywhere-opensource-src-5.9.6/qtbase/mkspecs/linux-arm-gnueabi-g++
vim qmake.conf
QT_QPA_DEFAULT_PLATFORM = EGLFS
QMAKE_CFLAGS_RELEASE += -O2 -march=armv7-a
QMAKE-CXXFLAGS_RELEASE += -O2 -march=armv7-a
QMAKE_INCDIR_OPENGL_ES2 = /home/engineer/Embedded-Qt/Native_SDK-3.5/Builds/Include
QMAKE_LIBDIR_OPENGL_ES2 = /home/engineer/Embedded-Qt/Native_SDK-3.5/Builds/Linux/armv7/Lib
QMAKE_LIBS_OPENGL_ES2 = -lEGL -lGLESv2 -lGLES_CM -lews
QMAKE_INCDIR_EGL = /home/engineer/Embedded-Qt/Native_SDK-3.5/Builds/Include
QMAKE_LIBDIR_EGL = /home/engineer/Embedded-Qt/Native_SDK-3.5/Builds/Linux/armv7/Lib
QMAKE_LIBS_EGL = -lEGL -lews
OPENSSL_LIBS = -L/home/engineer/Embedded-Qt/lib/lib -lssl -lcrypto
DBUS_LIBS = -L/home/engineer/Embedded-Qt/lib/lib -ldbus-1
# modifications to g++.conf
QMAKE_CC = arm-none-linux-gnueabi-gcc
QMAKE_CXX = arm-none-linux-gnueabi-g++
QMAKE_LINK = arm-none-linux-gnueabi-g++
QMAKE_LINK_SHLIB = arm-none-linux-gnueabi-g++
# modifications to linux.conf
QMAKE_AR = arm-none-linux-gnueabi-ar cqs
QMAKE_OBJCOPY = arm-none-linux-gnueabi-objcopy
QMAKE_NM = arm-none-linux-gnueabi-nm -P
QMAKE_STRIP = arm-none-linux-gnueabi-strip
- 配置选项[注意:提高权限执行]
./configure -v -xplatform linux-arm-gnueabi-g++ -prefix /usr/local/Embedded-Qt5.9.6 -opensource -release -opengl es2 -dbus-runtime -c++std c++11 -no-openssl --xcb=no --iconv=no --pcre=qt --zlib=qt --freetype=qt --harfbuzz=qt --libpng=qt --libjpeg=qt --sqlite=qt --assimp=qt --webengine-icu=qt --ffmpeg=qt --opus=qt --webp=qt -I /home/engineer/Embedded-Qt/lib/include/ -L /home/engineer/Embedded-Qt/lib/lib/
- 编译及安装
make
make install
以上是关于Qt.5.9.6移植的主要内容,如果未能解决你的问题,请参考以下文章