TI中文支持网
TI专业的中文技术问题搜集分享网站

AM335X qt5.5.1移植问题

1、基于am335x-evm开发板硬件;

2、SDK版本:ti-sdk-am335x-evm-08.00.00.00

3、文件系统:基于arago-base-tisdk-image-am335x-evm.tar.gz

4、交叉编译器:/ti-sdk-am335x-evm-08.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-

5、qt5.5.1 配置选项:./configure \
-prefix /usr/local/qt-5.5.1-arm \
-release \
-opensource \
-confirm-license \
-xplatform linux-arm-gnueabi-g++ \
-qt-libpng \
-qt-libjpeg \
-plugin-sql-sqlite \
-widgets \
-qt-sql-sqlite \
-make libs \
-no-cups \
-no-nis \
-no-iconv \
-no-dbus \
-no-openssl \
-no-iconv \
-no-accessibility \
-no-opengl \
-no-glib \
-no-xcb \
-nomake tools \
-nomake examples \
-nomake tests \
-qt-freetype \
-strip \
-linuxfb \
-plugindir /usr/local/qt-5.5.1-arm/plugin \
-verbose

6、qmake.conf:

#
# qmake configuration for building with arm-linux-gnueabi-g++
#

MAKEFILE_GENERATOR      = UNIX
CONFIG                 += incremental gdb_dwarf_index
QMAKE_INCREMENTAL_STYLE = sublib

include(../common/linux.conf)
include(../common/gcc-base-unix.conf)
include(../common/g++-unix.conf)

#QT_QPA_DEFAULT_PLATFORM = linuxfb
#QMAKE_CFLAGS_RELEASE   = -O2 -march=armv7-a
#QMAKE_CXXFLAGS_RELEASE = -O2 -march=armv7-a

# modifications to g++.conf
QMAKE_CC                = /opt/ti-sdk-am335x-evm-08.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc -lts
QMAKE_CXX               = /opt/ti-sdk-am335x-evm-08.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-g++ -lts
QMAKE_LINK              = /opt/ti-sdk-am335x-evm-08.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-g++ -lts
QMAKE_LINK_SHLIB        = /opt/ti-sdk-am335x-evm-08.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-g++ -lts

# modifications to linux.conf
QMAKE_AR                = /opt/ti-sdk-am335x-evm-08.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-ar cqs
QMAKE_OBJCOPY           = /opt/ti-sdk-am335x-evm-08.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-objcopy
QMAKE_NM                = /opt/ti-sdk-am335x-evm-08.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-nm -P
QMAKE_STRIP             = /opt/ti-sdk-am335x-evm-08.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-strip
load(qt_config)

7、编译安装 qt5.5.1库

8、编译qt自带的Example项目pinchzoom

9、在开发板中运行./pinchzoom ,缺少依赖库,从/opt/ti-sdk-am335x-evm-08.00.00.00/linux-devkit/sysroots/cortexa8t2hf-vfp-neon-oe-linux-gnueabi/usr/lib中复制SDK预编译好的库文件。

10、./pinchzoom能够正常运行,可是运行一段时间后,出现segment fault的错误,有时候则出现illegal instruction的错误。

恳请个人同仁帮忙分析一下什么原因,也希望TI工程师能够给与帮助,谢谢!

leo chen:

监控一下内存使用率,看看是不是内存占用太多了

Jian Zhou:

这个pinchzomm应用程序有没有自带的库文件呢?

keming tang:

回复 Jian Zhou:

你好! 没有的,就是完全依赖QT库! QT库又有它自己的依赖关系!

keming tang:

回复 leo chen:

好的,我试试看! 我内存用128M的,确实有点小!

另外还有一个现象,我自己写了一个测试程序,在Widget上显示一个标签控件,显示数值1秒加一次,运行15个小时,能够正常。

但是Widget上面切换显示图片,很快就死机了!

Yaoming Qin:

回复 keming tang:

1. 建议你查查是否有内存泄漏。

2. 强烈建议你移到最新的sdk上,会有gpu的加速。

keming tang:

回复 Yaoming Qin:

我在网上只看到ti-sdk-am335x-evm-08.00.00.00 这个版本是最新的,您有最新版本的链接地址吗? 谢谢!

Jian Zhou:

回复 keming tang:

请参考:http://software-dl.ti.com/processor-sw/esd/PROCESSOR-SDK-LINUX-AM335X/latest/index_FDS.html

xing tang:

你好,我在3352上移植qt5.5后,在qt-creator上随便拖了几个控件做了个界面,板子上显示出来的效果和qt creator上看到的效果差很多,板子上的很丑,就像win2000相对于win7那种感觉,请问你有没有遇到过这种问题?我看其他的教程也是直接在qt-creator上拖控件,板子上显示出来的是一样的效果,不知道我的是哪儿出了问题

fulin chen:

回复 xing tang:

你好,我最近移植 PDK3.0,上去也是出现差不多的问题,我总感觉这个显示效果比QT4.8.5还要差些,不知道你这边解了没有?

keming tang:

回复 fulin chen:

最后问题,不在QT! 在内存的时序! 不知道您是不是用DDR, 如果是需要先做DDR TUNNING

赞(0)
未经允许不得转载:TI中文支持网 » AM335X qt5.5.1移植问题
分享到: 更多 (0)