Chinaunix首页 | 论坛 | 博客
  • 博客访问: 304097
  • 博文数量: 23
  • 博客积分: 2589
  • 博客等级: 少校
  • 技术积分: 960
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-30 10:26
文章分类

全部博文(23)

文章存档

2012年(1)

2011年(3)

2009年(13)

2008年(6)

我的朋友

分类: C/C++

2009-06-27 23:59:30

   再三思量还是不格掉windows,在portable ubuntu上学习Qt。安装起来才发现有Qt3和Qt4两个版本,而且不是源码兼容的。搜了搜Qt教程,中文的竟然大都是2.x甚至1.x的,看来必须要啃啃英文了。
   估计嵌入式系统里Qt3用的比较多但我一向喜欢用新东西(否则也不会从debian跳到ubuntu),反正ubuntu装软件方便就都装了吧。开始搜索libqt,搜到的都装。
   写了个Hello Qt结果编译都过不了,摸索着设置了头文件又卡在链接上,想想也是,GUI程序怎么可能不链特定库呢。上网搜搜发现要qmake设置:
   先建一个目录,把你的源码放进去,再qmake -project为该目录生成配置文件,自己写也可。然后qmake生成Makefile,其中包含了和qmake版本相对应的头文件路径、库文件路径以及编译器、链接器设置和库文件。qmake默认是qmake-qt3,用qmake-qt4也可,但不能混用,尤其时编译链接时。换了qmake最好make clean一下。
   链接时需要QtGui QtCore,如果没有再搜索qt3 qt4,安装一下开发文件。不知为什么,qmake-qt4可以成功编译运行,qmake-qt3的配置就是不行,不知是不是ubuntu转向qt4没有维护qt3。
   总之安装一堆东西之后,用qmake-qt4配置一下项目文件,然后就可以make运行了。


================================我是日期分隔线===================================
    一晚没睡好,起来越想越觉得不对劲,看看qmake-qt3默认生成的Makefile,链接/usr/X11R6/lib里的 Xext X11 m pthread,我的ubuntu上根本没有/usr/X11R6/lib目录,在/usr/lib里倒是有这3个库文件。用nm看看没有link时缺失的符号,apt-cache search libqt3定位到libqt3-mt-dev,再dpkg -L libqt3-mt-dev一下定位到libqt-mt,修改Makefile,库文件路径/usr/lib,库文件qt-mt,make clean all成功。后来试了一下链qui也可以。
    各linux发行版之间确实该有一个规范了,总这样下去linux始终摆脱不了难用的诟病。
阅读(806) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~