• itop4412开发板编译QtE5.7源码


    该章节用到的文件可以在网盘的“iTOP4412 开发板资料汇总(不含光盘内容)\iTOP-
    4412 开发板系统源码及镜像(其他)\QtE5.7 移植资料\iTOP-4412-QtE-移植 QtE5.7 系
    统.zip”文件中找到。
    7.2.3.1 编译器版本
    编译 QtE5.7 用到的编译器是:
    “arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2”
    将编译器拷贝到“/usr/local/arm”目录下,并解压。
    使用命令“cd”(一定要使用 root 账户),接着使用“vim .bashrc”命令,打开环境
    变量配置文件。修改环境变量配置文件最底行(取消注释),如下图所示。
    <ignore_js_op> 
    接着还需要更新一下环境变量,如下图所示,使用命令“source .bashrc”。
    <ignore_js_op> 
    最后做一下环境变量测试。
    重启下控制台后,在 Ubuntu 控制台中输入“arm-none-linux-gnueabi-gcc -v”,然
    后回车,会出现如下图所示内容。
    <ignore_js_op> 
    7.2.3.2 编译触摸
    解压源码 tslib-1.4.tar.gz,然后执行如下命令。
    cd tslib
    ./autogen.sh
    ./configure CC=arm-none-linux-gnueabi-gcc CXX=arm-none-linux-gnueabi-g++ --host=arm-none-linux-gnueabi --
    prefix=/opt/tslib1.4 ac_cv_func_malloc_0_nonnull=yes
    make
    make install
    vim /opt/tslib1.4/etc/ts.conf 修改第二行如下
    <ignore_js_op> 
    保存,退出。
    7.2.3.3 编译 QtE5.7 镜像
    使用“tar -vxf qt-everywhere-opensource-src-5.7.0”命令解压 QtE5.7 源码,并进
    入解压生成的“qt-everywhere-opensource-src-5.7.0”目录。
    <ignore_js_op> 
    在“qt-everywhere-opensource-src-5.7.0”目录下,使用
    “ vi qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf ”命令,打开 qmake.conf
    文件,并修改为如下所示内容,如下图所示,红色字体为添加或者修改的部分。
    #
    # qmake configuration for building with arm-linux-gnueabi-g++
    #
    MAKEFILE_GENERATOR = UNIX
    CONFIG += incremental
    QMAKE_INCREMENTAL_STYLE = sublib
    QT_QPA_DEFAULT_PLATFORM = linux #eglfs
    QMAKE_CFLAGS_RELEASE += -O2 -march=armv7-a
    QMAKE_CXXFLAGS_RELEASE += -O2 -march=armv7-a
    include(../common/linux.conf)
    include(../common/gcc-base-unix.conf)include(../common/g++-unix.conf)
    # 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
    load(qt_config)
    保存,退出。
    使用“vi autoconfigure.sh”命令,新建“autoconfigure.sh”脚本。脚本内容如下所示。
    #!/bin/sh
    ./configure \
    -v \
    -prefix /opt/qt5.7.0 \
    -release \
    -opensource \
    -make libs \
    -xplatform linux-arm-gnueabi-g++ \
    -optimized-qmake \
    -pch \
    -qt-sql-sqlite \
    -qt-libjpeg \
    -qt-zlib \
    -no-opengl \
    -skip qt3d \
    -skip qtcanvas3d \
    -skip qtpurchasing \
    -no-sse2 \
    -no-openssl \
    -no-nis \
    -no-cups \
    -no-glib \
    -no-iconv \
    -nomake examples \
    -nomake tools \
    -skip qtvirtualkeyboard \
    -I/opt/tslib1.4/include \
    -L/opt/tslib1.4/lib
    exit
    保存脚本,退出。使用命令“chmod 777 autoconfigure.sh”修改脚本权限,然后使用
    命令“./autoconfigure.sh”执行脚本,会有版本认证,如下图。

    输入“yes”即可。
    接着使用编译命令“make”,之后使用安装命令“make install”。完成后,可以在
    “/opt”目录下可以查看到生成的“qt5.7.0”文件,如下图所示。
    <ignore_js_op> 
    在下一小节的打包过程中,会用到该文件。

  • 相关阅读:
    JUC学习笔记--从阿里Java开发手册学习线程池的正确创建方法
    1.初识Python
    学会 Debug
    如何找出nginx配置文件的所在位置?
    一个技术人,如何做到比别人更突出
    生产环境如何快速跟踪、分析、定位问题-Java
    如何优化代码中大量的if/else,switch/case?
    UML类图几种关系的总结
    DateUtils常用方法
    如何存储和表示数字—二进制(一)
  • 原文地址:https://www.cnblogs.com/liyue3/p/12603420.html
Copyright © 2020-2023  润新知