Navigation

    全志在线开发者论坛

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • 在线文档
    • 社区主页

    【V853开发板试用】编译QT测试下

    V Series
    2
    2
    3178
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      liuxingkeji LV 5 last edited by

      记录一下自己交叉编译QT的过程,目前来说再体验了初次编译镜像之后,编译这个QT还是算比较快捷的,因为该有的库都安装完成了。
      首先就是我需要找到我们的交叉编译器安装位置,这个在下载了Tina之后还是很好找的。
      tina-v853-open/prebuilt/rootfsbuilt/arm/toolchain-sunxi-musl-gcc-830/toolchain/bin
      如上路径。
      c0b85329-e8ca-45c9-b046-c2a98b5dba15-image.png
      我们用的一般就是这个,我们可以把其路径加到我们系统的环境中,这样在编译QT的时候就比较简单了。
      4e051d9f-09fb-49e2-9ef0-d75d002a0c59-image.png
      一般我是直接加到/etc/profile下的,这样重启后就有了。
      62cfa564-9b63-4ed0-8f7e-f262e7ee15ce-image.png
      敲一下arm-openwrt-linux-gcc -v这样就能出现如上提示就OK了。
      接下来我们准备下编译QT前先编译tslib这个在底层使用触摸屏的时候比较方便。
      43610a86-1438-41e1-a08f-bbb940a36c01-image.png
      这里我选择的1.15版本的,这个都可以,本身Tina再构建的时候好像就带了tslib。

      export STAGING_DIR=/home/v853/tina-v853-open/prebuilt/rootfsbuilt/arm/toolchain-sunxi-musl-gcc-830/toolchain/arm-openwrt-linux-muslgnueabi
      

      这段要再配置前执行,这段是为了找交叉编译器的库文件,头文件的。

      ./configure --host=arm-openwrt-linux ac_cv_func_malloc_0_nonnull=yes--cache-file=arm-linux.cache -prefix=/home/v853/QT/tslib-1.15/arm-tslib
      

      2a42c4f8-8cc5-4fdd-9a71-5fe63f89f9bb-image.png
      进行配置生成makefile文件。
      b03bb03e-b424-40dc-b056-76768f1b8c74-image.png
      然后直接make,make结束之后就是make install,这样就会在我们配置的文件夹中生成我们的arm-tslib。
      a913c65e-1ab4-4be8-ae42-110737377936-image.png
      这里其实也只是为了QT交叉编译找一下头文件库这些。
      24cb0fc8-da58-43ee-9686-1493a08ac1d6-image.png
      然后我们选择一个QT5版本,这里我选择了QT5.12.6。然后新建一个装交叉编译完成的文件夹我命名为arm-qt。之后我们一般选择构建一个脚本。
      b8a8a4ff-ee3d-4307-89e3-54a07bdf46fe-image.png
      这里我建了一个叫make.sh的。这样在这里面我们完成所以QT的配置工作,具体如下:

      #!/bin/sh
      PWD=`pwd`
          mkdir arm-qt
          ./configure \
          -prefix $PWD/arm-qt \
          -release \
          -opensource \
          -shared \
          -xplatform linux-arm-gnueabi-g++ \
          -optimized-qmake \
          -pch \
          -qt-sqlite \
          -qt-libjpeg \
          -qt-libpng \
          -qt-zlib \
          -no-opengl \
          -skip qt3d \
          -skip qtcanvas3d \
          -skip qtpurchasing \
          -skip qtlocation \
          -skip qttools \
          -no-sse2 \
          -no-openssl \
          -no-cups \
          -no-glib \
          -no-dbus \
          -no-xcb \
          -no-iconv \
          -no-separate-debug-info \
          -no-fontconfig \
          -tslib \
          -I /home/v853/QT/tslib-1.15/arm-tslib/include \
          -L /home/v853/QT/tslib-1.15/arm-tslib/lib \
          -recheck-all \
          -make examples
      
          make -j16 
          make install
      

      结尾就是直接构建然后安装。
      -xplatform linux-arm-gnueabi-g++
      中间我们注意这个配置,这个配置是要对应上我们交叉编译器的。
      0a3fc40d-7416-43b3-b134-b31eb15ad0e1-image.png
      fd911a34-13dc-445f-b191-6a474439a649-image.png
      把上面文件里面内容全部替换成我们的交叉编译器的名字。然后执行脚本即可。
      9dbf6215-1ea2-4623-b2a6-d61c67f7af67-image.png
      1d2175ae-a616-4d38-a4b4-8238cb370587-image.png

      确定一下我们的是否同意其license。输入yes即可,中间无报错直接就会构建完安装完。
      af0be0b0-a9c7-4855-a051-8773de3a9541-image.png
      这是我们配置的一些组件,可以自己选择性的安装。也就是修改脚本即可。
      9ad8e260-6903-4842-bcd4-247c714480ac-image.png
      这里就是编译完成了,中间大概等了半小时,看个人虚拟机配置情况。
      48aae576-69d5-40b4-be1b-f96e6f51da39-image.png
      在路径下生成了很多文件,我们放到arm开发板上也就是lib,和plugins这里面还没有字体文件,可以自己添加。
      0b54b788-f4d8-49a3-a387-63401a067fdb-image.png
      来到底层,我们需要把文件放到底层,然后我居然发现我编译的系统没有tar指令,没办法我们只能对SD卡下手了,我给sd格式化成ext4格式了也就是支持linux系统的格式。

      sudo apt install gparted
      

      我在Ubuntu下安装了gparted工具。直接格式化卡就行。
      这样我们可以直接挂载然后使用库。这个目的是因为有些。So文件无法解压的。

      export QT_PLUGIN_PATH=/mnt/qt5.12.6/plugins
      export QT_QPA_PLATFORM=linuxfb
      export LD_LIBRARY_PATH=/mnt/qt5.12.6/lib
      

      然后初始化一下我们的库路径,这样就能运行QT了,效果如下:
      dbd794f4-c66f-4eea-9a95-922cbcb454e7-image.png
      eafd34f3-13c1-4792-9a2c-2c1e94cb61ba-image.png
      附件如下:
      qt5.12.6.tar

      S 1 Reply Last reply Reply Quote Share 4
      • S
        soso90 LV 7 @liuxingkeji last edited by

        @liuxingkeji 不错,赶紧下载下来试试~~

        1 Reply Last reply Reply Quote Share 0
        • Referenced by  q1215200171 q1215200171 
        • Referenced by  q1215200171 q1215200171 
        • Referenced by  q1215200171 q1215200171 
        • Referenced by  q1215200171 q1215200171 
        • Referenced by  q1215200171 q1215200171 
        • Referenced by  YuzukiTsuru YuzukiTsuru 
        • Referenced by  M msh410278586 
        • Referenced by  WhycanService WhycanService 
        • Referenced by  L luying 
        • Referenced by  livpo livpo 
        • 1 / 1
        • First post
          Last post

        Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号

        行为准则 | 用户协议 | 隐私权政策