- 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) |
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 |
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
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 |
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 |
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 |
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 |
16. RunWebKitTest Program
1 |
cd /usr/local/Trolltech/QtEmbedded-4.5.1-generic/examples/webkit/formextractor |
MyTest Results
Familiar pattern
WebKit
Web Browser
Please use stable EditionToolchainAnd cooperate with the correctBSPVersion