移植qt至tiny210详细过程(代码片段)

Zackary.Liu Zackary.Liu     2022-11-06     559

关键词:

实验所需资源:

  1. tiny210(cortex-a8)
  2. QT 版本:5.6.2
  3. PC 环境:UBUNTU
  4. tslib:tslib-1.4
  5. 交叉工具链:4.5.1
  6. 开发板已装载好 Linux

编译 tslib

可能需要安装的库:

sudo apt-get install autoconf
sudo apt-get install automake
sudo apt-get install libtool

编译安装步骤如下:

tar xzf tslib-1.4.tar.gz
cd tslib
./autogen.sh 

mkdir tmp
echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache
./configure --host=arm-linux --cache-file=arm-linux.cache --prefix=$(pwd)/tmp

make
make install

更改 tslib 配置文件

sudo vim tmp/etc/ts.conf 
去掉 # module_raw input 前面的“#”和空格

编译 QT5.6.2

解压 QT 后,进入到该文件夹。

构造一个 build.sh 脚本,内容如下:

#!/bin/bash

./configure   -no-c++11   -prefix /Qt5   -opensource   -release   -confirm-license   -xplatform linux-arm-gnueabi-g++   -shared   -qt-zlib   -no-gif   -qt-libjpeg   -no-opengl   -no-cups   -no-glib   -no-dbus   -no-rpath   -no-sse2 -no-sse3 -no-ssse3 -no-sse4.1 -no-sse4.2   -no-avx   -no-openssl   -nomake tools   -qreal float   -qt-libpng   -tslib   -verbose   -nomake examples   -I /Qt5.6/tslib/tmp/include   -L /Qt5.6/tslib/tmp/lib

修改配置文件:

vim /qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf

加上:
    QT_QPA_DEFAULT_PLATFORM = linuxfb
    QMAKE_CFLAGS  += -msoft-float -D__GCC_FLOAT_NOT_NEEDED -march=armv7-a -mtune=cortex-a8
    QMAKE_CXXFLAGS += -msoft-float -D__GCC_FLOAT_NOT_NEEDED -march=armv7-a -mtune=cortex-a8
    
将
  # modifications to g++.conf
  QMAKE_CC = arm-linux-gnueabi-gcc
  QMAKE_CXX = arm-linux-gnueabi-g++
  QMAKE_LINK = arm-linux-gnueabi-g++
  QMAKE_LINK_SHLIB = arm-linux-gnueabi-g++
改为
  # modifications to g++.conf
  QMAKE_CC = arm-linux-gnueabi-gcc -lts -ldl
  QMAKE_CXX = arm-linux-gnueabi-g++ -lts -ldl
  QMAKE_LINK = arm-linux-gnueabi-g++ -lts -ldl
  QMAKE_LINK_SHLIB = arm-linux-gnueabi-g++ -lts -ldl

chmod 777 build.sh
./build.sh
make -J4
make install

QT 编译过程中可能需要的库

UBUNTU 使用以下命令安装

xcb 库:

sudo apt-get install "^libxcb.*" libx11-xcb-dev libglu1-mesa-dev libxrender-dev

一开始我是用 4.3.2 版本的工具链来编译 QT 的,到最后却报了

ld: hidden symbol `void QQmlThread::postMethodToThread<QQmlDataBlob*, QQmlDataBlob*, QQmlDataLoaderThread>(void (QQmlDataLoaderThread::)(QQmlDataBlob), QQmlDataBlob* const&)' isn't defined

这个错误,查了官方的资料得知 Bug with GCC versions < 4.4.x,感觉瞬间凉凉~ 只好换成了 4.5.1 的工具链。

后续实验见本分类下的其它文档。

有什么问题欢迎探讨,需要资源的可以留言。^_^

tiny210tslib测试(基于ft5x06触摸屏),解决触摸无效问题(代码片段)

1.拷贝至开发板将上次实验中的tmp文件夹拷贝到开发板,可以通过nfs来传输,并将tmp/lib下的所有.so文件拷贝至开发板的/usr/lib中,并且确保库的映射关系正确。2.声明tslib的环境变量exportTSLIB_CALIBFILE='/etc/pointercal'exportTSLIB_CONF... 查看详情

armcortex-a9(tiny4412)(代码片段)

要求移植linux增加系统调用并烧写至开发板详细步骤一、搭建linux编译环境1、GCC编译器的安装:tarxzvfarm-linux-gcc-4.5.1-v6-vfp-20120301.tgz-C/arm-linux-gcc-v//查看GCC版本2、gedit~/.bashrcexportPATH=$PATH:/opt/FriendlyARM/toolschain/4.5.1/bin3、rebo 查看详情

tiny210(s5pv210)移植u-boot(基于2014.4版本号)——移植u-boot.bin(打印串口控制台)

   在之前我们移植的代码中,都没看到明显的效果,这节我们实现控制台的信息打印。在上节。我们看到调用relocate_code重定位。在u-boot的帮助文档doc/README.arm-relocation中对重定位有说明。u-boot为了生成位置无关码,在... 查看详情

qt210开发板怎么样?

个人认为现在用还是买4412开发板吧,迅为的cortexa9四核的板子不错参考技术A提供一家新产品sin210 参考技术B学习肯定选择QT210,标配WIFI,还用TF卡,有安卓2.3,4.0,WINCE6.0等操作系统,并且全部开源。tiny210连最基础的boot都不开源... 查看详情

tslib1.4qt4.8.6移植过程记录(代码片段)

工作原因需要把原JAVA界面移植成QT界面,触摸驱动这个坑填了好久,今天终于搞定了,也怪自己经验不足吧。记录一下忘了以后还可以看看,设置的环境变量都是机器上的,如果需要使用得改改下载tslib1.4,安装相应要用到的工... 查看详情

移植qt与tslib到x210开发板的体会

1、将QT移植到X210上,让X210开发板可以运行QT东西,需要几个东西。tslibQT源码编译后的lib库等(1)tslib移植:@1:下载tslib,官方上下就可以。@2:解压。比如解压到了/root/xin_210/下@3:选择固定的交叉编译工具连,内核,tslib,QT源码... 查看详情

tiny4412--uboot移植串口(代码片段)

...链:linaro提供的gcc-linaro-6.1.1-2016.08-x86_64_arm-linux-gnueabi要移植的u-boot版本:u-boot-2016-11Tiny4412开发板硬件版本为:  底板:  Tiny4412SDK1312B  核心板:Tiny4412-1306 1,原理图查看tiny4412SDK-1312B-Schematic.pdf  ... 查看详情

tiny4412-1312__uboot移植(代码片段)

...链:linaro提供的gcc-linaro-6.1.1-2016.08-x86_64_arm-linux-gnueabi要移植的u-boot版本:u-boot-2016-11Tiny4412开发板硬件版本为:  底板:  Tiny4412SDK1312B  核心板:Tiny4412-1306 1.获取U-BOOT源码从FTP站点下载: ftp://ftp.denx.... 查看详情

stm32f103系列移植rtthread3.1.3完整版详细过程(代码片段)

这段时间在学习rtthread,在移植的过程中遇到挺多问题,现在对移植3.1.3版本做一个移植记录本人申明,整个文章过程都是本人亲自走过一边,有不懂的地方可以私信,感谢支持移植前准备:Keil5、STM32CubeMX... 查看详情

stm32f103系列移植rtthread3.1.3完整版详细过程(代码片段)

这段时间在学习rtthread,在移植的过程中遇到挺多问题,现在对移植3.1.3版本做一个移植记录本人申明,整个文章过程都是本人亲自走过一边,有不懂的地方可以私信,感谢支持移植前准备:Keil5、STM32CubeMX... 查看详情

tiny4412移植opencv2.4.7手记

在买了新的4412板子后。打算趁着刚成功在6410上移植过的经验,速度解决下。不想出现了各种问题。小结下:1、关于opencv的移植:tiny4412的linux3.5上,须要把opencv的lib内so尽数复制到板子根文件夹lib下。并依照pc的arm-opencv路径。复... 查看详情

tiny4412--uboot移植时钟(代码片段)

...链:linaro提供的gcc-linaro-6.1.1-2016.08-x86_64_arm-linux-gnueabi要移植的u-boot版本:u-boot-2016-11Tiny4412开发板硬件版本为:  底板:  Tiny4412SDK1312B  核心板:Tiny4412-1306 1、时钟体系exynos4412芯片时钟体系的介绍在《Exy... 查看详情

linuxqt5移植到linuxarm(代码片段)

文章目录相关文章1.前言2.tslib-1.22的移植2.1tslib官方源码下载2.2交叉编译tslib源码3.QT5.15.2的移植3.1QT5.15.2官方源码下载3.2交叉编译QT4.设置QtCreator编译环境5.配置开发板的环境6.移植过程遇到的问题相关文章《【TOOLS】ubuntu如何安装Qt... 查看详情

移植tslib和qt5.6到三星s5pv210开发板

tslib1.4移植下载tslib1.4后1.cptslib-1.4.tar.bz2/home/gec2.tarjxvftslib-1.4.tar.bz23.sudo-s4.cdtslib-1.4/5../configure--host=arm-linux--prefix=/usr/local/armac_cv_func_malloc_0_nonnull=yes6.make7.makeinstal 查看详情

vxworks驱动移植至sylixos总结(代码片段)

本文档描述了将VxWorks中的驱动源码快速移植至SylixOS中的方法,使用时需要结合SylixOS中的VxWorks兼容层实现。1.驱动注册与初始化1.1VxWorks中驱动注册与初始化1.1.1初始化函数VxWorks中大部分函数使用了VxWorks的VxBus结构,对于基于VxBus... 查看详情

freertos移植(代码片段)

...g.csdn.net/gjhave/article/details/126550714文章目录超详细的FreeRTOS移植全教程——基于stm32准备简单介绍FreeRTOSSource文件夹移植过程提取源码添加到工程添加FreeRTOSConfig.h文件创建工程分组添加头文件路径修改FreeRTOSConfig.h修改stm32f10x_it.c创 查看详情

stm32f103系列移植rtthread3.1.3完整版详细过程(代码片段)

这段时间在学习rtthread,在移植的过程中遇到挺多问题,现在对移植3.1.3版本做一个移植记录本人申明,整个文章过程都是本人亲自走过一边,有不懂的地方可以私信,感谢支持移植前准备:Keil5、STM32CubeMX... 查看详情

移植qt5.6到嵌入式开发板(史上最详细的qt移植教程)

目前网上的大多数QT移植教程还都停留在qt4.8版本,或者还有更老的Qtopia,但是目前Qt已经发展到最新的5.7版本了,我个人也已经使用了很长一段时间的qt5.6forwindows,本文就来介绍一下QT在嵌入式环境的搭建。 移植以到JZ2440为例... 查看详情