一、tslib移植
第一步:解压tslib-1.4.tar.gz
tar -zxvf tslib-1.4.tar.gz
第二步:进入解压过的目录
cd tslib-1.4
第三步:执行tslib-1.4目录下的autogen.sh
./autogen.sh
这一步需要安装一些工具:sudo apt-get install automake
第四步:执行autogen.sh脚本所生成的Makefile文件
请打入以下命令:
echo "ac_cv_func_malloc_0_nonnull=yes" >$ARCH-linux.cache
./configure --host=arm-softfloat-linux-gnu --prefix=/home/linux/tslib --cache-file=$ARCH-linux.cache
--host是指你的交叉编译器的前最;例如:你的交叉编译器是arm-linux-gcc,则--host=arm-linux.如果是arm-softfloat-linux-gnu-gcc
则--host=arm-softfloat-linux-gnu
--prefix 是你执行make install 的时候编译后生成的可执行文件和库文件以及配置文所安装的目录;
configure文件下还有好多选项;你可以执行./configure --help 来进行选择其他项,不过在这里这些选项就够了。
第五步:执行make
第六步:执行make install
2.将tslib打包进Qt
进入源码目录
./configure -embedded arm -no-armfpa -little-endian -qt-gfx-transformed -qt-gfx-linuxfb -nomake demos -nomake examples -no-phonon -no-qt3support -no-feature-CURSOR -qt-mouse-tslib -L$HOME/tslib/lib -I$HOME/tslib/include
期间遇到好多问题,参考了一些列文章
感谢万能的google,大部分人都能从中找到答案,走向了make之路。但是也有人试了别人的方法都不成功,成了未解之谜。
其实有两个方法,能让我们更深入一点看到我们我们这些错误从何而来,从而帮助我们去自己解决问题。
1。 在./configure 的选项里加上 -verbose选项,出错信息会更丰富,而不是没头没脑的来一句测试失败了
2。 还有个方法就是根据提示的出错信息,去$QTDIR/config.test目录下去找对应的测试例子,因为单独编译,这样你就把问题大大的缩小了,找到问题的概率也变大了。
昨天在本站论坛就 有朋友碰到“The tslib functionality test failed!”的问题,最后通过测试config.test/unix/tslib目录下的小例子(这些小例子正是./configure会调用测试, 给出正确或出错信息的。)最后发现是版本不兼容的原因。
其实还有一个方法,去读./configure文件,这才是真正的×××。 刚开始你可能漫无头绪,其实加些打印(如果是bash写的,就用echo;如果是perl写的,就用print),过一阵之后,你会发现自己几乎解决绝大部分问题。
这是QTCute里面的一段文字,对我们真的很有启发
参考的网站资料:
1.华清远见:×××Column/Column97.htm
2.CuteQt:http://www.cuteqt.com/blog/?tag=%E8%B0%83%E8%AF%95
3.QtForm.org:http://www.qtforum.org/index.php?page=Thread&postID=96421&s=1139c1ca29512d3637ef4ca64d15e0e6863c8c1c#post96421
4.csdn博客:http://blog.csdn.net/chen2qiao/archive/2009/09/14/4550505.aspx
转载于:https://blog.51cto.com/prothesman/1411547