Qt 4.6.3 (including WebKit) transplanted to andestech Platform

Source: Internet
Author: User
  • Qt 4.6.3 (including WebKit) transplanted to andestech Platform

Basically, the porting method is no different.
BesidesAlway inlineNo modification required
Changed to be defined directly in configure.Always_inline
-D always_inline = inline

I organized the required files in SourceForge'sAndes QT Port ProjectMedium
Http://sourceforge.net/downloads/andesqt/

SourceForge is more generous than the limit of a single file size of MB:-) compared with Google Code

  • Ag101_image_with_unalign_access is enabledUnalign accessBut I have not actually tested it.Leopard
  • Bashrc. nds32le-linux-V0. This is my source profile
  • Linux-2.6-bsp20.tgz for a stable versionAndestech BSPUse this version to re-compile the kernel.
  • Nds32le-linux-glibc-V0-Qt45.tgz for a stable versionAndestech toolchain
  • Xc5_image_with_unalign_access is enabledUnalign accessI have actually tested the kernel

Follow these steps after downloading

1. modify it to you.Environment VariableParameters

1 source bashrc.nds32le-linux-V0

2. DownloadQt embeddedDecompress

1 wget http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz
2 tar zxvf qt-everywhere-opensource-src-4.6.3.tar.gz

3. Enter the Directory

1 cd qt-everywhere-opensource-src-4.6.3

4. modify the program and use"LInux-generic-G ++".

1 vim mkspecs/qws/linux-generic-g++/qmake.conf

Join

01 include(../../common/g++.conf)
02 include(../../common/linux.conf)
03 include(../../common/qws.conf)
04  
05 # modifications to g++.conf
06 QMAKE_CC                = nds32le-linux-gcc -EL -G0 -Wa,-mno-small-data -lts
07 QMAKE_CXX               = nds32le-linux-g++ -EL -G0 -Wa,-mno-small-data -lts
08 QMAKE_LINK              = nds32le-linux-g++ -EL -G0 -Wa,-mno-small-data -lts
09 QMAKE_LINK_SHLIB        = nds32le-linux-g++ -EL -G0 -Wa,-mno-small-data -lts
10  
11 # modifications to linux.conf
12 QMAKE_AR                = nds32le-linux-ar cqs
13 QMAKE_OBJCOPY           = nds32le-linux-objcopy
14 QMAKE_STRIP             = nds32le-linux-strip

5. modify the program

1 vim /src/corelib/io/qfilesystemwatcher_inotify.cpp

AddAndestech Parameters

1 //# error "This architecture is not supported. Please talk to qt-bugs@trolltech.com"
2 # define __NR_inotify_init      316
3 # define __NR_inotify_add_watch 317
4 # define __NR_inotify_rm_watch  318
5 # define __NR_inotify_init1     360

6.Always_inline does not need to be modified
Src/3 rdparty/WebKit/javascriptcore/WTF/alwaysinline. h

7. Input (note that the last part is added.-D always_inline = inline)

1 ./configure -embedded generic -qt-zlib -qt-libpng -qt-gif -qt-libtiff -qt-libmng -qt-libjpeg -no-openssl -little-endian -webkit -svg -no-xmlpatterns -no-phonon -backend -no-accessibility -no-glib -no-freetype -no-dbus -no-pch -qt-mouse-tslib -I/home/liu/nds32/include -L/home/liu/nds32/lib -v -D ALWAYS_INLINE=inline

8. Input
O

9. Enter
Yes

10. Enter

Make

11. Enter

Sudo make install

12. Copy to SD card or useNFS

1 udhcpc
2 mount -t nfs 192.168.1.99:/home/liu/nds32/ /tmp/ -o proto=tcp -o nolock

13. Set Variables

 

01 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib:/tmp/lib
02 export TSLIB_TSDEVICE=/dev/input/event0
03 export TSLIB_CALIBFILE=/tmp/etc/pointercal
04 export TSLIB_CONFFILE=/tmp/etc/ts.conf
05 export TSLIB_PLUGINDIR=/tmp/lib/ts
06 export TSLIB_FBDEVICE=/dev/fb0
07  
08 export QTDIR=/usr/local/Trolltech/QtEmbedded-4.6.3-generic/
09 export QWS_KEYBOARD=None
10 export QWS_MOUSE_PROTO=tslib
11 export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

 

14. Add a directory

 

1 mkdir -p /usr/local/Trolltech/
2 mount -t nfs 192.168.1.99:/usr/local/Trolltech/ /usr/local/Trolltech/ -o proto=tcp -o nolock
3 ln -s /tmp/etc/pointercal /etc/pointercal
4  
5 printf "/033[9;0]" > /dev/tty0

 

15. Run the test program

 

1 cd /usr/local/Trolltech/QtEmbedded-4.6.3-generic/examples/layouts/borderlayout
2 ./borderlayout -qws
3 # If you do not have unaligned access, the following program will perform core dump
4 cd /usr/local/Trolltech/QtEmbedded-4.6.3-generic/examples/widgets/sliders
5 ./sliders -qws

 

16. RunWebKitTest Program

 

1 cd /usr/local/Trolltech/QtEmbedded-4.5.1-generic/examples/webkit/formextractor
2 ./formExtractor -qws

 

MyTest Results

 

 

 

 

 

 

 

Familiar pattern

 

 

WebKit

 

 

 

 

 

Web Browser

 

 

 

 

 

Please use stable EditionToolchainAnd cooperate with the correctBSPVersion

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.