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                        

 

时间: 2024-10-29 12:18:39

Qt 5.8 移植编译、测试的相关文章

我用.net 开发的框架、网站在 linux下全部移植编译调试测试完毕,非常爽!

问题描述 我用.net开发的框架.网站在linux下全部移植编译调试测试完毕,非常爽!我快爽晕了,哈哈!特提供一个典型的测试网站供大家观摩http://wwww.bwsyq.com看清楚是4个w啊不能访问可以通过下面的地址进行访问由于是测试,所以用的是ADSL,IP地址经常变化,域名不能用可参考下面提供的最新的IP地址!用的是我的笔记本,带宽只有2MB!部署环境ubuntu10.10+mysql5.1+apache2+mono2.67开发环境ubuntu10.10+mono2.67+mono-d

CRP多语言编译/测试插件使用之基础环境

引言 最近CRP上线了多言编译/测试插件,作为开发者,我想使用CRP对我的项目进行持续集成,那么如何顺利的完成编译/测试我的项目呢,CRP提供的编译/测试的环境是什么,支持的指令有哪些呢,本文将详细介绍多语言编译/测试插件的基础环境. 什么是CRP的插件 CRP的插件是工作流中的的节点的任务的具体实现方式,比如编译/测试任务是由多语言编译/测试插件具体实现的. 常用指令(可以在crp编译/测试任务输入框内直接输入) apt-get update && apg-get install -y

【区块链】Truffle 部署 编译 测试 智能合约 的 完整实践操作

Truffle 部署 编译 测试 智能合约 的 完整实践操作 目标 搭建开发环境 创建一个Truffle项目 编写智能合约 编译转移智能合约 测试智能合约 创建用户界面连接智能合约 在浏览器中访问Dapp 搭建开发环境 Node.js v6+ LTS and npm (comes with Node) Git 这里配置脚本略过.... xiaoyu@LIXIAOYUdeMacBook-Pro.com node -v v8.5.0 xiaoyu@LIXIAOYUdeMacBook-Pro.com

《Metasploit渗透测试手册》—第8章8.6节移植并测试新的漏洞利用代码模块

8.6 移植并测试新的漏洞利用代码模块 Metasploit渗透测试手册 在上节中学习了怎样使用可用的概念验证代码开发完整的Metasploit模块,本节中将把该模块保存到合适的位置,并测试其是否正常运转. 准备 了解漏洞利用代码模块要存储的文件夹位置是非常重要的,有助于追踪不同模块所在位置,同时也有助于Metasploit框架理解模块的基本用法.完整的模块脚本构建完成之后,在合适的位置将其保存. 怎样实现 由于上面开发的是漏洞利用代码模块,针对的目标是Windows操作系统,影响的是特定的文件

《R语言数据分析》——1.2 文本文件编译测试平台

1.2 文本文件编译测试平台 从平面文件处理和导入一定规模的数据集到R还可以使用data.table包.该开发包语法格式与传统基于S的R语言不同,它也拥有大量的参考文档.页面以及针对各类数据库行为设计的令人印象深刻的优化操作的案例.我们将在本书第3章以及第4章中讨论类似应用和案例. 它提供了一个经用户优化后的R函数来处理文本文件: 相对之前的样例,数据的导入速度非常快,算法的处理结果存放在特定的data.table类中,如果有必要可以将其转换成传统的data.frame类型: 或者使用setDF

BuildBot 0.8.4p2发布 自动化编译/测试周期工具

BuildBot是一个系统的自动化编译/测试周期工具,大多数软件项目需要验证码的变化.它可以构建和测试致力于每一个变化时,通过网页或其他协议提供状态更新. BuildBot 0.8.4p2这是一个修正错误的修订版在0.8.4p1基础上.修复新闻文件的完整列表程序及围绕中心的报告,mergeRequests,像"checkconfig"和"try"实用程序等. 下载地址: Master &http://www.aliyun.com/zixun/aggregat

BuildBot 0.8.6p1发布 自动化编译/测试周期工具

BuildBot 是一个采用持续http://www.aliyun.com/zixun/aggregation/15149.html">集成系统设计的系统自动化编译/测试周期的工具,通过大多数软件项目来验证代码的变化.它可以构建和测试树提交的每一个变化,通过网页或其他协议提供状态8206.html">实时更新. BuildBot 0.8.6p1是0.8.6的一个bug修正版本,在很大程度上做了改善.更新的包含Web UI, IRC, MailNotifier, proper

BuildBot 0.8.6发布 自动化编译/测试周期工具

BuildBot 是一个采用持续http://www.aliyun.com/zixun/aggregation/15149.html">集成系统设计的系统自动化编译/测试周期的工具,通过大多数软件项目来验证代码的变化.它可以构建和测试树提交的每一个变化,通过网页或其他协议提供状态8206.html">实时更新. BuildBot 0.8.6该版本主要进行了一些改善,很多构建灵活的配置的更新.包含了Web UI.IRC.MailNotifier.属性和网络挂钩的变化,一些错误

lambda表达式-编译测试

我不会IL,也不想学IL,所以为了测试Lambda表达式编译的原理,只能使用调试进行试验来认识: 第一种情况,当Lambda表达式没有用到函数外的变量时: class MyClass2 { public Action TestLambda() { Action action = () => { Console.WriteLine(DateTime.Now); }; return action; } public static void Test() { MyClass2 c2 = new MyC