The problem that the arrow does not change when you click "no response" on the arm for Qt Transplantation

Source: Internet
Author: User

The transplantation of QT has previously been transplanted to S3C2440. Now the platform is at91sam9x35. However, the porting process is the same, but we have encountered things that we did not encounter before. We will record them here.

Platform: at91sam9x35

Linux-2.6.39 Environment

Transplant QT: 4.6.4

Cross-compiler: Arm-Linux-gcc

Problems encountered during the transplantation: run the QT program and click the screen without any response.

(1) Problem Analysis: The ev_version macro in the Cross Compiler header file is different from the ev_version macro in the migrated kernel version.

Solution:

View ev_version definitions.

Position in the Cross Compiler:/opt/buildroot-2011.11/arm926t/usr/ARM-unknown-Linux-uclibcgnueabi/sysroot/usr/include/Linux/input. h. This is the location of the file in my cross compiler.

Linux Kernel: Include/Linux/input. h

Both of them here are # define ev_version 0x010001. some files are 0x010000. Only two files are the same. if they are different, change the kernel to match the cross compiler.

Symptoms of this problem:

If you run the tslib library before running the QT program for correction, the selected device is not a touchscreen I understand error will occur. The cause and

The debugging method will be discussed later.

(2) Problem Analysis: Incorrect environment variable settings

Solution:

Export qws_mouse_proto = tslib:/dev/event0

Export tslib_tsdevice =/dev/event0

This is the main environment variable, and others will not be posted here.

Of course, some are/dev/input/event0 or others. Here we need to test which one is actually.

Test method:

1. CAT/dev/event0 and click the touch screen to check whether something is output. garbled characters are also acceptable.

2. Click hexdump/dev/event0 to check whether data output exists.

Both methods work in the same way, that is, to determine which device is a touch screen device.

(3) Problem Analysis: problems occurred when compiling the QT Library

My problem is that the-QT-mouse-tslib option is not added to configure during compilation. Therefore, this option should be added to configure. the following are my compilation options for your reference only.

./configure -prefix /apps/qt-everywhere-arm926t/ -release -shared -fast -no-largefile -qt-sql-sqlite -no-qt3support -no-xmlpatterns -no-mmx -no-3dnow -no-sse -no-sse2 -no-svg -no-webkit -qt-zlib -qt-gif -qt-libtiff -qt-libpng -qt-libmng -qt-libjpeg -make libs -xplatform qws/linux-arm-g++ -nomake tools -nomake examples -nomake docs -nomake demo -no-nis -no-cups -no-iconv -no-dbus -no-openssl -embedded arm -little-endian -qt-freetype -depths 16,18 -no-glib -qt-mouse-tslib -no-javascript-jit -no-script -no-scripttools 

Now, the problem has been solved.

The problem that the arrow does not change when you click "no response" on the arm for Qt Transplantation

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.