QT5.4.2在ARM上的移植

准备移植phonon,4.5移植失败。播放声音就出错。。。没办法。转移到QtMutimedia

安装交叉编译工具这里就不提了。。。

1.下载QT5.4.2:http://download.qt.io/archive/qt/

不小下载5.0,这个版本有问题。。。

2.配置

配置时需要注意的几点是:

如果是交叉编译,需要配置 xplatform选项,比如要在arm-linux平台上移植Qt的话,就在配置项中加上 -xplatform linux-arm-gnueabi-g++ ,Qt5支持的交叉平台都可在源码顶层目录中的 qtbase/mkspecs/ 下找到,每个子目录名代表一个交叉平台的名字,移植Qt时应根据自己的实际情况修改平台对应的子目录下的qmake.conf文件,它定义了一些与平台相关的环境变量,如交叉编译器等;

Qt5默认的qreal类型是64bit的double,如果希望用float类型定义qreal,则在配置选项中加入"-qreal float"

进qtbase//mkspecs/linux-arm-gnueabi-g++

修改qmake.conf

# modifications to g++.conf

QMAKE_CC                = arm-linux-gcc

QMAKE_CXX               = arm-linux-g++

QMAKE_LINK              = arm-linux-g++

QMAKE_LINK_SHLIB        = arm-linux-g++

# modifications to linux.conf

QMAKE_AR                = arm-linux-ar cqs

QMAKE_OBJCOPY           = arm-linux-objcopy

QMAKE_STRIP             = arm-linux-strip

load(qt_config)

注意:必须先修改qmake.conf,否则./configure会报错:STL functionality check failed! Cannot build Qt with this STL library.
 

./configure -xplatform linux-arm-gnueabi-g++ -release -shared -fast -no-largefile -qt-sql-sqlite -qreal float

3.编译

make

会出错,如下:

QT 嵌入式编译出错:cc1: fatal error: .pch/release-shared-emb-arm/QtGui: No such file or directory 解决方案:

老的arm-linux-gnu工具链不支持64位,因此需要安装32位库

apt-get install lsb-core

 

时间: 2024-08-02 01:55:23

QT5.4.2在ARM上的移植的相关文章

MPlayer在ARM上的移植(S5PV210开发板)

MPlayer 1.0已经把大部分解码库都自带了,如ffmpeg,但是自带的音频库在S5PV210下效果非常不好.换成使用libmad效果不错.因此MPlayer 在ARM-Linux的最简单的移植只需要移植这两个即可.移植后即进行字符界面的播放.      移植之前先做好移植前准备,安装好arm-linux交叉编译器,并下载 MPlayer-1.0rc2.tar.bz2 和libmad包(libmad-0.15.1b.tar.gz) 1.安装libmad(1)解压libmad解压libmad包

qt5.3.2移植到arm上出undefined reference to '__sync_sub_and_fetch_4的错

qt5.3.2移植到arm上出undefined reference to '__sync_sub_and_fetch_4的错.解决办法如下, 使用工具:GCC4.4.1 QT源码:qt5.3.2 前提是确保你的工具已经安装成功了. 解决:1.下载gcc源码:我用的4.4.1解压,在gcc-4.4.3/gcc/config/arm/目录下找到一个linux-atomic.c:2.制作链接库:使用libtool制作,输入命令 libtool --tag=CC --mode=compile arm-

移植qt5.3.1到arm

最近刚入手一款开发板(比较低端,刚毕业工作还没一个月,穷屌丝一个).在学校以前都是用的是Friendly Arm的6410,使用的qt版本是使用的最多的4.7.0版本,入手的板子是4.7.4.qt5出来也有好长的时间了,其中提供了很多的特性,所以这次移植的是qt5的最新版本5.3.1. 第一步准备好源码包,这里需要qt的源码包,和tslib包,tslib我使用的是开发板提供的包. 设置交叉编译环境,我使用的是friendly arm的交叉工具.将其加到PATH中. 然后看看是不是已经安装成功.

opencv在arm和x86上的移植

一.开发环境 操作系统:fedora14 Opencv版本:2.0 Qt版本:4.7 arm:mini6410 交叉编译工具:arm-linux-gcc-4.5.1 二.安装与配置 Linux系统的安装,交叉Qt-creator的安装还有交叉编译工具的安装,网上说的基本都没什么问题,测试后都可以用.这里安装Qt-Creator遇到了一点小问题,按照网上的和mini6410开发手册上的安装方法太复杂了,用QtSdk-offline-linux-x86-v1.2.1.run安装方便又准确. 这篇文章

arm上移植mplayer

关于mplayer移植网上资料很多,但都很混乱.在此,我做了一个关于mplayer 的详细总结.在做之前最好在解压源码包后,先通过./configure --help看一下相关配置. X86的LINUX上已经自带了解码库,不需要另外安装解码库,而arm平台自己做的文件系统没有解码库,需要另外安装解码库. 下载MPlayer:MPlayer-1.0rc2.tar.bz2        解码库:libmad-0.15.0b.tar.gz 一.在x86的LINUX上安装mplayer 1 #./con

【Allwinner ClassA20类库分析】 1.ARM上的Delphi - Lazarus

提起上位机上的Delphi,在以前可能熟悉的人很多,虽然前几年随着Borland公司的倒闭,使用Delphi的人越来越少,但是这并不能掩盖她先进的VCL框架.全能选手的光芒.在Windows平台上,无论从Win95,还是到Win8.1,编译过一次的exe文件可以在无需安装任何运行时库的情况下直接运行,曾经也是病毒编写优先考虑的语言:而在各种管理系统的开发中,Delphi也是开发效率运.行效率极其优秀的语言.只是由于Borland公司过度捆绑Windows的策略,使其应用于其他平台的机会大大减少.

16C554在LINUX上的移植(AT91)

16C554在LINUX上的移植(AT91) linux版本:2.6.30 AT91SAM9263 修改串口扩展驱动: 1,在/drivers/serial/下以8250_exar_st16c554.c文件为模板创建8250_at91_xr16v554.c文件:修改相应的PORT和中断号,修改Platform device ID为 PLAT8250_DEV_AT91_XR16V554:在init函数中加入了对总线,及中断口的初始化操作::在文件/include/linux/serial_8250

SPI在linux3.14.78 FS_S5PC100(Cortex A8)和S3C2440上驱动移植(deep dive)

由于工作的原因,对SPI的理解最为深刻,也和SPI最有感情了,之前工作都是基于OSEK操作系统上进行实现,也在US/OS3上实现过SPI驱动的实现和测试,但是都是基于基本的寄存器操作,没有一个系统软件架构的思想,感觉linux SPI驱动很强大,水很深,废话少说,SPI总线上有两类设备:一类是主机端,通常作为SOC系统的一个子模块出现,比如很多嵌入式MPU中都常常包含SPI模块.一类是从机被控端,例如一些SPI接口的Flash.传感器等等.主机端是SPI总线的控制者,通过使用SPI协议主动发起S

怎样把UCos-ii_在STM32上的移植

下载代码 stm32 标准外设库是 stm32 全系列芯片的外设驱动,有了它能够大大加速我们 开发 stm32. 首先从 st 公司的站点下载最新的 stm32 标准外设库,写本文时最新的版本号是 V3.5.0. 解压该 zip 文件.得到例如以下目录和文件 STM32F10x_StdPeriph_Lib_V3.5.0\ _htmresc Libraries Project Utilities Release_Notes.html stm32f10x_stdperiph_lib_um.chm 当