先说一下我的环境
qtCreator 2.3.1
qt 4.7.4
1.先从qextserialport的官方网站http://code.google.com/p/qextserialport/下载代码,是托管在Google上的,要安装一个工具Mercurial,然后在命令行下运行 hg clone https://code.google.com/p/qextserialport/
我这里访问https不行,所以直接把https改成http,也能下载出代码
2.将src目录下的代码解压出来,然后qtcreator新建一个工程,将.h和.cpp文件加入工程
3.编译,出错,说什么文件找不到,这里困扰了我好久,查资料,看论坛,终于,在它的网站上看到,要从qt官网上找到这个qwineventnotifier_p.h文件,然后手工复制到C:\QtSDK\Desktop\Qt\4.7.4\mingw\include\QtCore\private目录下,其中private这个目录要自己手工建的
4.继续编译,依然出错。。。。。。说什么库文件没有导入什么的。。。。折腾许久,还是没效果。
5.放弃qextserialport,改用论坛上dbzhang800改写的dbzhang800-qextserialport
http://code.google.com/r/dbzhang800-qextserialport/
6.和上面一样,添加到工程,在windows下,不要添加posix开头的文件,然后编译,果然,一切正常,测试一下,可以收到串口数据。
7.将工程复制到fedora9上,添加posix开头的文件,删除win开头的文件,继续编译,正常
至此,总算基本完成了qextserialport的初步使用。
目前还有一个问题,在用4.7.0for arm来交叉编译的时候,提示qatomic-arm.h中有个错误,no such instruction,目前还没有解决,也就是在arm下还不能用这个库。。。
------解决方案--------------------
QSerialDevice:这个方便好用多了!代码也非常Qt!
http://qt-apps.org/content/show.php?content=112039
------解决方案--------------------
我稍微写了一下,算是 Qt 的串口类的一个小小总结吧:
http://blog.csdn.net/dbzhang800/article/details/6954214