Difference between revisions of "Qtopia core howto"
Binaryblade (Talk | contribs) |
Searchworks (Talk | contribs) (remove spam) |
||
(8 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
We need to find the compiler (symlinks & path) | We need to find the compiler (symlinks & path) | ||
− | $ cd | + | $ cd gumstix/gumstix-oe/tmp/cross/armv7a/bin |
− | $ PATH=$PATH: | + | $ for f in arm-angstrom-linux-gnueabi-*; do n=$(echo $f|cut -b 28-); ln -s $f arm-linux-$n; done |
+ | $ PATH=$PATH:gumstix/gumstix-oe/tmp/cross/armv7a/bin/ ; export PATH | ||
Download and unpack qt-embedded. As of release candidate 1, the name has changed from qtopia to qt-embedded. The commands to get and unpack the qt-embedded release candidate for the gumstix are: | Download and unpack qt-embedded. As of release candidate 1, the name has changed from qtopia to qt-embedded. The commands to get and unpack the qt-embedded release candidate for the gumstix are: | ||
− | $ wget ftp://ftp. | + | $ wget ftp://ftp.qtsoftware.com/qt/source/qt-embedded-linux-opensource-src-4.5.0.tar.gz |
− | $ tar xzvf qt-embedded-linux-opensource-src-4. | + | $ tar xzvf qt-embedded-linux-opensource-src-4.5.0.tar.gz ; cd qt-embedded-linux-opensource-src-4.5.0 |
− | I chose to install qt-embedded in the directory qt-4. | + | I chose to install qt-embedded in the directory qt-4.5.0 under /usr/lib. If you would like to install it somewhere else, provide that location in the -prefix option. |
Configure, make and make install. If you want to use the touchscreen for mouse input, it is best to include the tslib mouse driver configuration for qt-embedded. The correct configuration is: | Configure, make and make install. If you want to use the touchscreen for mouse input, it is best to include the tslib mouse driver configuration for qt-embedded. The correct configuration is: | ||
− | $ ./configure -embedded arm -little-endian -prefix /usr/lib/qt-4. | + | $ ./configure -embedded arm -little-endian -prefix /usr/lib/qt-4.5.0 -prefix-install -qt-mouse-tslib |
$ make | $ make | ||
$ sudo make install INSTALL_ROOT=/tmp/qt-embedded | $ sudo make install INSTALL_ROOT=/tmp/qt-embedded | ||
Line 20: | Line 21: | ||
$ cd /tmp/qt-embedded/usr/lib | $ cd /tmp/qt-embedded/usr/lib | ||
− | $ tar zcf ~/qt-4. | + | $ tar zcf ~/qt-4.5.0.tar qt-4.5.0/{lib,plugins,translations} |
gumstix: $ tar zxf qt-4.4.0.tar -C /media/cf ; ln -s /media/cf/qt-4,4,0/ /usr/lib/qt-4.4.0 | gumstix: $ tar zxf qt-4.4.0.tar -C /media/cf ; ln -s /media/cf/qt-4,4,0/ /usr/lib/qt-4.4.0 | ||
/media/cf can be substituted with /media/card if you are using a MicroSD expansion like the one that comes with the LCD Pack. | /media/cf can be substituted with /media/card if you are using a MicroSD expansion like the one that comes with the LCD Pack. | ||
− | Additionally Symlinks cannot be stored on a FAT based disk. This means that the symbolic links like libQtGui.so.4 -> libQtGui.so.4. | + | Additionally Symlinks cannot be stored on a FAT based disk. This means that the symbolic links like libQtGui.so.4 -> libQtGui.so.4.5.0 won't be present and your programs may not be able to find libQtGui.so.4 . To fix this either format the disk to a symlink compatible system (ext2) or make real copies of the libraries under the other name. |
qt-embedded needs libstdc++, move it to your gumstix's /lib or somewhere it can be found | qt-embedded needs libstdc++, move it to your gumstix's /lib or somewhere it can be found | ||
− | $ cd | + | $ cd gumstix/gumstix-oe/tmp/staging/armv7a-angstrom-linux-gnueabi/lib/ |
$ tar zcf ~/libstdc++.tar libstdc++.so* | $ tar zcf ~/libstdc++.tar libstdc++.so* | ||
Line 44: | Line 45: | ||
$ export QWS_MOUSE_PROTO='tslib:/dev/input/touchscreen0' | $ export QWS_MOUSE_PROTO='tslib:/dev/input/touchscreen0' | ||
$ ts_calibrate | $ ts_calibrate | ||
+ | |||
+ | |||
+ | == See Also == | ||
+ | |||
+ | *[http://processors.wiki.ti.com/index.php/Building_Qt Building Qt at wiki.ti.com] | ||
[[Category:How_to_-_gui]] | [[Category:How_to_-_gui]] |
Latest revision as of 15:28, 23 November 2010
We need to find the compiler (symlinks & path)
$ cd gumstix/gumstix-oe/tmp/cross/armv7a/bin $ for f in arm-angstrom-linux-gnueabi-*; do n=$(echo $f|cut -b 28-); ln -s $f arm-linux-$n; done $ PATH=$PATH:gumstix/gumstix-oe/tmp/cross/armv7a/bin/ ; export PATH
Download and unpack qt-embedded. As of release candidate 1, the name has changed from qtopia to qt-embedded. The commands to get and unpack the qt-embedded release candidate for the gumstix are:
$ wget ftp://ftp.qtsoftware.com/qt/source/qt-embedded-linux-opensource-src-4.5.0.tar.gz $ tar xzvf qt-embedded-linux-opensource-src-4.5.0.tar.gz ; cd qt-embedded-linux-opensource-src-4.5.0
I chose to install qt-embedded in the directory qt-4.5.0 under /usr/lib. If you would like to install it somewhere else, provide that location in the -prefix option.
Configure, make and make install. If you want to use the touchscreen for mouse input, it is best to include the tslib mouse driver configuration for qt-embedded. The correct configuration is:
$ ./configure -embedded arm -little-endian -prefix /usr/lib/qt-4.5.0 -prefix-install -qt-mouse-tslib $ make $ sudo make install INSTALL_ROOT=/tmp/qt-embedded
tar and move it to gumstix (~40 MB)
$ cd /tmp/qt-embedded/usr/lib $ tar zcf ~/qt-4.5.0.tar qt-4.5.0/{lib,plugins,translations}
gumstix: $ tar zxf qt-4.4.0.tar -C /media/cf ; ln -s /media/cf/qt-4,4,0/ /usr/lib/qt-4.4.0
/media/cf can be substituted with /media/card if you are using a MicroSD expansion like the one that comes with the LCD Pack. Additionally Symlinks cannot be stored on a FAT based disk. This means that the symbolic links like libQtGui.so.4 -> libQtGui.so.4.5.0 won't be present and your programs may not be able to find libQtGui.so.4 . To fix this either format the disk to a symlink compatible system (ext2) or make real copies of the libraries under the other name.
qt-embedded needs libstdc++, move it to your gumstix's /lib or somewhere it can be found
$ cd gumstix/gumstix-oe/tmp/staging/armv7a-angstrom-linux-gnueabi/lib/ $ tar zcf ~/libstdc++.tar libstdc++.so*
libstdc++.so libstdc++.so.6 libstdc++.so.6.0.8
gumstix: $ tar zxf libstdc++.tar -C /lib
Set variables for qtopia & calibrate touchscreen. If you are using the tslib then you should calibrate the touch screen using ts_calibrate instead of the mousecalibration example. The environment variable QWS_MOUSE_PROTO should be set to tslib:/dev/input/touchscreen0
$ export QWS_MOUSE_PROTO='tslib:/dev/input/touchscreen0' $ ts_calibrate