Hi3519V101上移植QT4.8.6

来源:互联网 发布:apache subversion 编辑:程序博客网 时间:2024/06/13 09:39

目录

  • 目录
  • 前言
  • 环境
  • 交叉编译
  • 总结

前言

因为想要通过QT在3519上实现跟踪效果,所以在Hi3519上移植了QT4.8.6。虽然结果不理想,但是还是想把自己的移植过程记录下来!或许是自己的功力还不够的原因,今天莫名地感到心累!
本篇博客参考易百纳论坛,感谢大神们的无私奉献!

环境

PC:Ubuntu16.04
交叉编译工具链:arm-hisiv500-linux
QT版本:qt-everywhere-opensource-src-4.8.6.tar.gz

交叉编译

  1. 解压:tar -xvf qt-everywhere-opensource-src-4.8.6.tar.gz
  2. 进入mkspecs/qws目录:cd /hisilicon/qt/qt-everywhere-opensource-src-4.8.6/mkspecs/qws
  3. 复制linux-arm-g++目录到linux-hisiv500-g++目录:cp linux-arm-g++ linux-hisiv500-g++ -rf
  4. 进入linux-hisiv500-g++目录
    • 修改qmake.conf:vi qmake.conf
    # modifications to g++.conf    QMAKE_CC               = arm-hisiv500-linux-gcc    QMAKE_CXX              = arm-hisiv500-linux-g++    QMAKE_LINK             = arm-hisiv500-linux-g++    QMAKE_LINK_SHLIB       = arm-hisiv500-linux-g++    # modifications to linux.conf    QMAKE_AR                = arm-hisiv500-linux-ar cqs    QMAKE_OBJCOPY           = arm-hisiv500-linux-objcopy    QMAKE_STRIP             = arm-hisiv500-linux-strip
  • 增加qplatformdefs.h:vi qplatformdefs.h ——->#undef O_CLOEXEC
    1. 安装x11库:sudo apt-get install libx11-dev libxext-dev libxtst-dev
    2. 返回源码目录qt-everywhere-opensource-src-4.8.6/mkspecs进行配置
./configure --prefix=/opt/qt4.8.6 -opensource -confirm-license -qt-sql-sqlite \-qt-gfx-linuxfb -plugin-sql-sqlit -no-qt3support -no-phonon -no-svg -no-webkit \-no-javascript-jit -no-script -no-scripttools -no-declarative -no-declarative-debug \-qt-zlib -no-gif -qt-libtiff -qt-libpng -no-libmng -qt-libjpeg -no-rpath -no-pch \-no-3dnow -no-avx -no-neon -no-openssl -no-nis -no-cups -no-dbus -embedded arm \-platform linux-g++ -xplatform qws/linux-hisiv500-g++ -little-endian -qt-freetype \-no-opengl -no-glib -nomake demos -nomake examples -nomake docs -nomake tools

其中:–prefix=/opt/qt4.8.6是交叉编译qt库后的安装目录
-xplatform qws/linux-hisiv500-g++指定编译器及平台配置信息,就是步骤4修改的目录
编译成功后如下:
Qt4.8.6成功信息
7. make
Make生成的信息
8. make install
在/opt目录下生成qt4.8.6目录:

cmd:tree qt4.8.6/ -L 1.├── bin├── include├── lib├── mkspecs├── plugins└── translations

总结

编译qt4.8.6的过程还是很简单的,难点在于通过Hi3519显示Qt界面,后续会继续补充。而且感觉Qt版本有点老,以后还是编译Qt5的库试试,毕竟要紧跟潮流嘛!

条条大路通罗马,可在你选择路,拼命奋斗的时候,人家已经在罗马了!可起码你在路上,虽然终归是条错误的路!
road

原创粉丝点击