• Qt 5.8 移植编译、测试


    /******************************************************************************
     *                        Qt 5.8 移植编译、测试
     * 说明:
     *     仅仅记录了编译的命令,没有详细的解释,参考文档链接中有详细的解释。
     *
     *                                         2017-7-6 深圳 龙华樟坑村 曾剑锋
     *****************************************************************************/
    
    一、参考文档:
        1. Qt5.7.0编译移植到Linux-Arm-A9
            https://my.oschina.net/u/938455/blog/474516
        2. qt-5.6.0 移植之qt源码编译
            http://www.cnblogs.com/chenfulin5/p/5798764.html
        3. qt-5.6.0 移植之tslib 配置及编译
            http://www.cnblogs.com/chenfulin5/p/5801604.html
    
    二、compiler configure
        export PATH=$PATH:/home/zengjf/zengjfos/output/host/opt/ext-toolchain/bin:
    
    三、compile tslib 1.4
        ./autogen.sh
        echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache
        
        ./configure --host=arm-linux --prefix=`pwd`/_install CC=arm-none-linux-gnueabi-gcc --cache-file=arm-linux.cache
        make && make install
    
    
    四、compile Qt 5.8
        1. cat qtbase/mkspecs/linux-arm-none-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)
            
            # modifications to g++.conf
            # arm-none-linux-gnueabi-g++
            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
            load(qt_config)
    
        2. ./configure -release 
            -opensource 
            -confirm-license 
            -xplatform linux-arm-none-gnueabi-g++ 
            -prefix /home/zengjf/zengjfos/Qt5.8/QtLibOut 
            -nomake examples 
            -no-opengl 
            -no-iconv 
            -silent 
            -qpa linuxfb 
            -no-gtk 
            -qt-libjpeg 
            -qt-libpng 
            -tslib 
            -I/home/zengjf/zengjfos/Qt5.8/tslib-1.4/_install/include 
            -L/home/zengjf/zengjfos/Qt5.8/tslib-1.4/_install/lib
    
    五、lib使用环境变量:
        1. 拷贝前面编译的lib库到ARM文件系统中;
        2. 配置lib库环境变量:
            # tslib and qt configure                                                                  
            
            export TSLIBDIR=/usr/share/tslib
            export TSLIB_CONSOLEDEVICE=none                                                 
            export TSLIB_FBDEVICE=/dev/fb0                                                  
            export TSLIB_TSDEVICE=/dev/input/event0                                         
            export TSLIB_CONFFILE=$TSLIBDIR/etc/ts.conf                                    
            export TSLIB_PLUGINDIR=$TSLIBDIR/lib/ts                                        
            export TSLIB_CALIBFILE=/etc/pointercal                                           
            
            export QTDIR=/usr/share/qt
            export QT_QPA_PLATFORM_PLUGIN_PATH=$QTDIR/plugins                               
            export QT_QPA_PLATFORM=linuxfb:tty=/dev/fb0                                     
            export QT_QPA_FONTDIR=$QTDIR/lib/fonts                                          
            export QT_QPA_GENERIC_PLUGINS=tslib:$TSLIB_TSDEVICE                             
            
            export QT_DEBUG_PLUGINS=1
            
            export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib:/usr/lib:$TSLIBDIR/lib:$QTDIR/lib
            export PATH=$PATH:/usr/bin:$TSLIBDIR/bin:/usr/sbin:/bin                        
  • 相关阅读:
    C SHARP.net 中DataSet.Fill实现不很理想,摸索中
    java程序代码 Exchenge.java
    java中的BREAK和CONTINUE语句的应用
    C++ 和 Java 中的变参
    BS程序代码与安全与基本攻击/防御模式
    MySql与Java的时间类型
    Ant 阅读笔记
    进度,效率,与个人事务管理 Personal Task 1.0
    Struts 实现的I18N
    解决站点关键数据,状态数据,无须持久化数据的一些思路
  • 原文地址:https://www.cnblogs.com/zengjfgit/p/7126078.html
Copyright © 2020-2023  润新知