Customizing dynamic libraries of Qt based on the embedded Linux Li Yang 1,a, Wang Yunliang 2,b

Similar documents
Study on the Quantitative Vulnerability Model of Information System based on Mathematical Modeling Techniques. Yunzhi Li

Research on the Application of Digital Images Based on the Computer Graphics. Jing Li 1, Bin Hu 2

Constructing an University Scientific Research Management Information System of NET Platform Jianhua Xie 1, a, Jian-hua Xiao 2, b

The Design of Distributed File System Based on HDFS Yannan Wang 1, a, Shudong Zhang 2, b, Hui Liu 3, c

A Digital Menu System Based on the Cloud client Technology Lin Dong 1, a, Weibo Li 1, b, Ping He 2,c,Jia Liu 1,d

The Analysis and Research of IPTV Set-top Box System. Fangyan Bai 1, Qi Sun 2

The Design of CAN Bus Communication System Based on MCP2515 and S3C2440 Jinmei Liu, Junhong Wang, Donghui Sun

The Analysis of the Loss Rate of Information Packet of Double Queue Single Server in Bi-directional Cable TV Network

Research on Full-text Retrieval based on Lucene in Enterprise Content Management System Lixin Xu 1, a, XiaoLin Fu 2, b, Chunhua Zhang 1, c

Research Of Data Model In Engineering Flight Simulation Platform Based On Meta-Data Liu Jinxin 1,a, Xu Hong 1,b, Shen Weiqun 2,c

Keywords: Interactive electronic technical manuals; GJB6600; XML markup language; Automatic control equipment

Fingerprint Verification Terminal of Examination Information Based on Qt Mengtao Huang 1, Mengyao Han 2

The RTP Encapsulation based on Frame Type Method for AVS Video

Design and Implementation of MP3 Player Based on FPGA Dezheng Sun

Shape Optimization Design of Gravity Buttress of Arch Dam Based on Asynchronous Particle Swarm Optimization Method. Lei Xu

Serial Communication Based on LabVIEW for the Development of an ECG Monitor

Construction of the Library Management System Based on Data Warehouse and OLAP Maoli Xu 1, a, Xiuying Li 2,b

Realization of Automatic Keystone Correction for Smart mini Projector Projection Screen

Design and Implementation of LED Display Screen Controller based on STM32 and FPGA Chi Zhang 1,a, Xiaoguang Wu 1,b and Chengjun Zhang 1,c

The Design of Electronic Color Screen Based on Proteus Visual Designer Ting-Yu HOU 1,a, Hao LIU 2,b,*

Research On DB2 Performance Testing Automation

Application of Three-dimensional Visualization Technology in Real Estate Management Jian Cui 1,a, Jiju Ma 2,b, Dongling Ma 1, c and Nana Yang 3,d

Design and Implementation of unified Identity Authentication System Based on LDAP in Digital Campus

Research of Video Surveillance and Diagnosis System for Plant Diseases Based on DM6446 Wang Xiuqing 1, a Qie Xu 1, b Zhang Chunxia 1, c Zhao Na 1, d

A design of real-time image processing platform based on TMS320C6678

Simulation Technology of Light Effect Based on Catia and Workbench Software HongXia Hu

Research of 3D parametric design system of worm drive based on Pro/E. Hongbin Niu a, Xiaohua Li b

HUMAN-COMPUTER INTERFACE DEVELOPMENT OF WIRELESS MONITORING SYSTEM BASED ON MINIGUI

A Network Disk Device Based on Web Accessing

Utilizing Restricted Direction Strategy and Binary Heap Technology to Optimize Dijkstra Algorithm in WebGIS

A Compatible Public Service Platform for Multi-Electronic Certification Authority

The Application of PLC in the automatic Packing Machine Control System Lixia Guo a, Zhengzhong Li b

Web-Based Monitoring for Frequency Converters with USS Interface

Applied Mechanics and Materials Vol

Optimal Design of the Data Center Environmental Temperature Monitoring ZhiXiang Yuan 1,2, a, ShuangBo Lai 2,b, Ming Liu 1,c, HuiYi Zhang 1,2, d

Prepayment Electric Energy Meter with Multi-functional for Multi-user based on STC11F52XE Sun Wei 1,a and Tuo Jianzhi 1,b

Design of PC Remote Monitoring System for Standby Generators Chuanhong Zhou 1,a,Jinjie Xiao 1,b, Wei Ren 1,c

A CNC equipment distributed monitoring system based on cloud computing technology RangYong Zhang a, Geng Ma b, GuangHe Cheng c

Research on function and design of virtual instrument based on LabVIEW Technology

Design of the Software for Wirelessly Intercepting Voices

D Design and Implementation of Limestone Activity Real-time Detection System Based on Qt /Qwt Hao XU1, a, Pingping SHAN1, Ke CHEN1, Zheng ZHANG 1

Design of Soybean Milk Machine Control System based on STC89C52. Ya-gang SUN, Yue ZHANG, Zhi-gang YANG, Rui-cheng ZHANG and Xiao-wei SHEN

Design and Implementation of CNC Operator Panel Control Functions Based on CPLD. Huaqun Zhan, Bin Xu

Research Article. Three-dimensional modeling of simulation scene in campus navigation system

Application of Theory and Technology of Wireless Sensor Network System for Soil Environmental Monitoring

The Application of Programmable Controller to Chip Design. Shihong Lan 1, Jian Zhang 2

ECU Hardware-in-Loop Simulation System Design for Gas Engine based on Virtual Instruments

Study and Design of CAN / LIN Hybrid Network of Automotive Body. Peng Huang

Qingdao, , China. China. Keywords: Deep sea Ultrahigh pressure, Water sound acquisition, LabVIEW, NI PXle hardware.

AN WIRELESS COLLECTION AND MONITORING SYSTEM DESIGN BASED ON ARDUINO. Lu Shaokun 1,e*

Remote Monitoring System of Ship Running State under Wireless Network

An energy efficient communication routing Protocol based on LEACH for WSN

Design of analog acquisition and storage system about airborne flight data recorder

Design of the MFC& Flash-based Visualization Stage Management System

Design of Physical Education Management System Guoquan Zhang

The Design of Wireless Data Collector based on WIA-PA Ligang Li 1,2,a, Zhongfeng Wang 1,2,b, Jianlong Huang 1,2,c

Design of Monitoring System Software Based on Hadoop. Technology. Shijie Luo, Dong Xie*, WeiLin Qiu, Hui Wang, Minzhi He

A New Method Of VPN Based On LSP Technology

Research Institute of Uranium Geology,Beijing , China a

Storage Model of Graph Based on Variable Collection

Path Planning with Motion Optimization for Car Body-In-White Industrial Robot Applications

Image Quality Assessment-Oriented Frame Capture of Video Phone over 3G system

Design of Large-scale Wire-speed Multicast Switching Fabric Based on Distributive Lattice

CopperSpice: A Pure C++ GUI Library. Barbara Geller & Ansel Sermersheim CPPCon - September 2015

Design on Office Automation System based on Domino/Notes Lijun Wang1,a, Jiahui Wang2,b

Design and Implementation of the Omni Media Content Production and Service Platform

An Indian Journal FULL PAPER ABSTRACT KEYWORDS. Trade Science Inc. The study on magnanimous data-storage system based on cloud computing

Qt Essentials - Fundamentals of Qt Module

Application and Research of Integrated Information Exchange System Between Substation and Dispatch Center

Research on Image Sensor System Acquisition Based on ARM

Design and Implementation of Remote Push System of Resources Based on Internet

The Application Analysis and Network Design of wireless VPN for power grid. Wang Yirong,Tong Dali,Deng Wei

A Template-Matching-Based Fast Algorithm for PCB Components Detection Haiming Yin

The Design and Development of the Precision Planter Sowing Depth Control System

DESIGN AND IMPLEMENTATION OF TOURIST WEBGIS BASED ON J2EE

REAL TIME IMAGE PROCESSING BASED ON EMBEDDED LINUX

Network Video Surveillance System Based on Embedded Linux and ARM Technology

The Construction of Off-line Map Based on OpenStreetMap and Leaflet Ludi Wang 1, a, Renjie Pi 1,b, Xiaoguang Zhou 1, c and Huiling Zhou 1, d

The Research about Embedded Soft PLC Running System Based on ARM

Tourism Guide for Tamilnadu (Android Application)

A Multi-party Decision Hot-standby Model

Identifying The Stay Point Using GPS Trajectory of Taxis Hao Xiao 1,a, Wenjun Wang 2,b, Xu Zhang 3,c

Design and Implementation of Archives Query System Based on B/S Structure Lianfeng Zhao

Design of Precise Control and Dynamic Simulation of Manipulator for Die-casting Mould

Applied mechanics and applied technology in fuel injection pump bench. Rotational speed measurement system design based on CPLD

Research on Design and Application of Computer Database Quality Evaluation Model

Telemetry Data Acquisition and Analysis in Integrated Baseband System Based on TCP/IP Protocol

Construction of SSI Framework Based on MVC Software Design Model Yongchang Rena, Yongzhe Mab

Effect of Mesh Size of Finite Element Analysis in Modal Analysis for Periodic Symmetric Struts Support

The Development of Mobile Shopping System Based on Android Platform

Keywords: truck frame, parametric modeling, cross-section.

Research and design on boxing-teaching robot of embedded system and pressure sensor

A Real-time Detection for Traffic Surveillance Video Shaking

A Design of Remote Monitoring System based on 3G and Internet Technology

Design and Implementation of Embedded Bluetooth Multicast System

Research on the Knowledge Representation Method of Instance Based on Functional Surface

Chapter 2: System Structures

LDAP-based IOT Object Information Management Scheme

SMART VEHICLE CONTROLLED SYSTEM

Tacked Link List - An Improved Linked List for Advance Resource Reservation

Transcription:

Applied Mechanics and Materials Submitted: 2014-11-12 ISSN: 1662-7482, Vol. 740, pp 782-785 Accepted: 2014-12-02 doi:10.4028/www.scientific.net/amm.740.782 Online: 2015-03-09 2015 Trans Tech Publications, Switzerland Customizing dynamic libraries of Qt based on the embedded Linux Li Yang 1,a, Wang Yunliang 2,b 1 School of Electrical Engineering of TIANJIN UNIVERSITY OF TECHNOLOGY, China 2 Tianjin Key Laboratory for Control Theory & Application in Complicated System, Tianjin University of Technology, China a yanglijuden@foxmail.com b wangyl@tjut.edu.cn Keywords: Embedded Linux, Qt, Customize, transplant Abstract. With the development of embedded system, embedded graphics user friendly, intuitive interface(gui) used for communication with users becomes a research subject. The article mainly introduces the customization of dynamic libraries of Qt under the ARM11 and Linux environment, which can save disk space of the ARM board. 0 Introduction Nowadays, embedded development has attracted more and more developers, the embedded products available in the market also have sprung up. People also constantly improve to the requirement of embedded products, convenient and quick graphical man-machine interface has become an important indicator of products. Linux core due to its open source, robust and stable and can be clipped is widely used in the embedded development. Qt is a support multi-platform c + + graphical interface development tools, because of its characteristics such as object-oriented, cross-platform, rich API was used in the embedded development [1]. Qt is Trolltech Company developed a multi-platform c++ graphical user interface application framework. Including rich API interfaces and c++ class library, used for GUI development and international integration tool. QT/Embedded is specifically for Embedded Linux development tools, it is much more complex than the PC, the installation, operation environment. Most classes of Qt are needless in embedded development, But there classes are compiled into the library, witch lead that the embedded products have to extra pay disk space to the Qt libraries. In order to solve this situation, this paper mainly introduces how to tailor the Qt library. 1 Customize and transplantation of Qt 1.1 Constructing the development environment of Qt Qt has three ways to compile under Linux: qt/x11, Qt/Embedded-x86 and Qt/Embedded- arm. At First installed the qt/x11, generation for embedded development, designer, UI, qvfb, and other tools in the installation directory. Then install the QT/Em-bedded- version of X86, which can simulate the operation of embedded QT application program with PC qvfb frame buffer, so the compiler environment QT/Embedded- x86 and qt/x11 during the installation t is the same, with particular attention to set configuration parameters for this installation, the parameter -embedded x86 specifies the processor platform is x86. In the qt/x11 and QT/Embedded-x86 application program running, to correctly set environment variables, so that the application can correctly calls the installation directory library file. The operation results of QT/Embedded- x86 application show in the qvfb, so before that, cope the qvfb tool which is under the qt/x11 installation directory to the bin directory of QT/Embedded- x86 installation directory. Installing QT/Embedded- x86 is mainly to make developers can debug applications on the PC easily[2][3]. 1.2 Clipping Dynamic library of Qt Due to its rich API, Qt also makes compiled library files much larger than other embedded GUI s development framework. However, it is not possible to use all classes of Qt in the develpment of application. Therefore, clipping on Qt library can save storage space for embedded products, which can be divided into two parts, module clipping and feature clipping. All rights reserved. No part of contents of this paper may be reproduced or transmitted in any form or by any means without the written permission of Trans Tech Publications, www.ttp.net. (ID: 130.203.136.75, Pennsylvania State University, University Park, USA-05/03/16,14:22:20)

Applied Mechanics and Materials Vol. 740 783 From version 4 Qt begins to use a modular form, separating different functions into independent libraries, which makes it simple to remove some unwanted libraries. Qt configure provides some methods of settings module. For example, when passing configure by adding -no-svg or -no-webkit can replace the support of this part. Accordingly, there are many small functions can be configured in the form of configure parameters, referring to the output of configure -help. When checking the configure help, paying special attention to the contents added *, which is the default configure option of Qt. By default, Qt will compile feature as much as possible, which has some advantages that the user can use all the function of Qt, but harm is also very obvious that the Qt compiled by default is large, especially the compilation of the debug version, which take space of 1 to 2 GB basically. In addition, the default condition won't compile some plugins, such as database plugin, which often require the users according to the need to compile. Embedded version of Qt supports feature clipping, we can take advantage of this feature to make Qt libraries as small as possible. Specific approach is to do an own properties file and define the features you want to remove. Firstly run qconfig, the tool compiler-generated by qt / X11 (in the bin directory under the installation directory), then select src/corelib/global/qfeature.txt file under Qt source directory and open it, as shown in Figure 1. Fig. 1 qconfig interface Figure on the left shows the options which can be clipped, standing for modules with different classes or different functions. According to your demand of classes and modules in the development, select these unnecessary classes and modules, and save an arbitrarily named file to the src / corelib / global / directory. Followed by the last configure add -qconfig [file name], compile and install to achieve the crop of Qt feature. In addition, Qt has scheduled a good crop selection, such as qconfigminimal.h, qconfig-small.h, qconfig.medium.h, qconfig-large.h and qconfig-dist.h which can be selected according to the development. The compiled arm version of the library files will be copied to arm development board, and set the Qt environment variables to the system, in this way complete the Qt transplant arm board. 2 Example of simple music player As to the introduction of QT music player, first it s necessary to know about the basic frame of the multimedia, then combining with basic information explain the programming principles of music player [4]. MediaObject manages the media source(start, pause,finish);sink outputs multimedia, usually it s a device of playing, receiving the media information from MediaObject; Path is used for connection between MediaObject and sink. The whole process is as shown in Figure 2. Fig. 2 The whole process

784 Mechanical, Information and Industrial Engineering QT project itself doesn t include the module of Phonon, which needs us to add this module in the project file.pro. In the system of Phonon, MediaObject manages media source(start, pause, finish); AudioOutput connects the physical devices; SeekSlider realizes the progress bar; Qlist realizes the play-list. In the coding they are embodied in the following code. Qlist<Phonon::MediaSource>sourceList;//play-list Then connect the MediaObject and AudioOutput through constructor so that the media data can be transported from MediaObject to AudioOutput; and then play via the physical devices. Phonon::createPath(mediaObject,audioOutput); First we need to add the file of media source through connecting the constructor of interface buttons and adding media files, which needs the signal of Qt and Slots mechanism. connect (addfilesaction, SIGNAL (triggered ( )), this, SLOT(addFiles ())); slot functions of adding media files QStringList files = QFileDialog::getOpenFileNames(this,tr("select files")); QDesktopServices::storageLocation (QDesktopServices::MusicLocation); if(files.isempty()) return; int index= sources.size(); foreach (QStringstring,files)// Browse through each selected files and add them to the play-list { Phonon::MediaSource source(string); sources.append(source); if(!sources.isempty()) metainformationresolver- >setcurrentsource(sources.at(index)); Other signals/slot functions can be realized in the same way connect(pauseaction, SIGNAL(triggered( )), mediaobject, SLOT(pause())); Corresponding control by detecting the current state of the media files void statechanged (Phonon::State newstate,phonon::state /* oldstate */) { switch (newstate){ case Phonon::PlayingState: playaction- >setenabled(false); break; case Phonon::StoppedState: stopaction- >setenabled(false); break; After the application is written, first, set it effective in the PC QT / Embedded- x86 and simulate the result in qvfb; after successful operation, set it effective in QT/Embedded- arm, and then cross-compile the application. Copy the generated executable file to the development board file system and set the environment variables in the above development board effective, and then perform./ executable file name - qws, and then the running effect can be seen in the development board. In this example, the phonon module is used so that it should be joined in the ranks of the compiler when clipping in module clipping.and some Qt classes, including QFileDialog, QTableWidget, QMenuBar, QProgressBar and so on, are also used, which can be clipped and

Applied Mechanics and Materials Vol. 740 785 should be chose in feature clipping.table 1 is the comparison of size between the library of default compilation and the library after clipping based on this example. Table 1. The size of libraries QtCore QtGui default 2.9Mb 8.9Mb tailored 2.1Mb 6.0Mb 3 Conclusion QT/Embedded becomes the mainstream of embedded development as tools of embedded development interface because of its friendly interface and convenient. This article mainly from the building of development environment introduced how to develop applications which run in the ARM board in PC Linux environment, and then illustrates the developed process of a Qt/Embedded application instancing the player. Reference: [1] LEI hong, WU Hui-ting.The Discussion and the Research Based on the Embedded Processors[J]. Information Security and Technology,2011(6):26-28. [2] WANG Hao-nan, Liu Yi-cheng. Development of Qt based on Embedded Linux [J]. Computer Development & Applications, 2010,23(1):12-13. [3] SUN Wei, FENG Wei-xing. Development and Application of Qt /Embedded Applications on ARM-Linux, 2011,30(8):37-38. [4] ZHAO Peng. Design and Implementation of MP3 Player Based on Embedded Linux [J]. Modern Computer,2011(03):110-112.

Mechanical, Information and Industrial Engineering 10.4028/www.scientific.net/AMM.740 Customizing Dynamic Libraries of Qt Based on the Embedded Linux 10.4028/www.scientific.net/AMM.740.782