• 8367阅读
  • 1回复

[讨论]Qt新手几个问题 [复制链接]

上一主题 下一主题
离线szuzsq
 

只看楼主 倒序阅读 楼主  发表于: 2011-08-24
我一直使用vc,最近想学习Qt
我机子上装有:
vs2008
Qt_SDK_Win_offline_v1_1_2_en.exe
qt-vs-addin-1.1.9.exe
-----------------------------
没有用vs2008或mingw编译qt、qt creator,而是直接默认安装qtSDK的
版本如下:
Qt Creator 2.2.1
基于Qt 4.7.4
mingw 4.4

在试用过程中,有几个问题被弄糊涂了
------------------------------
1、安装完qtsdk后,我的目录如下:
E:\QtSDK\Demos
   \Desktop
   \Documentation
   \Examples
   \Licenses
   \mingw
   \pythongdb
   \QtCreator
   \readme
   \Simulator
   \Symbian
   \temp
   \vcredist_x86
不太清楚头文件,库文件在哪里?包括标准c的、标准c++的、Qt的
例如我搜索stdio.h时,有:
E:\QtSDK\mingw\include\stdio.h
E:\QtSDK\Symbian\tools\sbs\win32\mingw\include\stdio.h
E:\QtSDK\mingw\lib\gcc\mingw32\4.4.0\include\ssp\stdio.h
等等,还有很多,没有全部写上来

例如我搜索vector时,有:
E:\QtSDK\Symbian\SDKs\Symbian3Qt473\epoc32\include\stdapis\boost\tr1\tr1\vector
E:\QtSDK\mingw\lib\gcc\mingw32\4.4.0\include\c++\vector
E:\QtSDK\Symbian\tools\sbs\win32\mingw\include\c++\3.4.5\vector
等等,还有很多,没有全部写上来

例如我搜索qapplication.h时,有:
E:\QtSDK\Desktop\Qt\4.7.3\mingw\include\Qt\qapplication.h
E:\QtSDK\Desktop\Qt\4.7.3\mingw\include\QtGui\qapplication.h
E:\QtSDK\Desktop\Qt\4.7.3\msvc2008\include\Qt\qapplication.h
E:\QtSDK\Simulator\Qt\mingw\include\QtGui\qapplication.h
等等,还有很多,没有全部写上来

现在的问题是,假如我在程序中
#include <stdio.h>
那qt creator到底使用的是哪份呢?


------------------------------
2、我试着新建了一个destop的Qt Gui Application,只有一个对话框
编译运行时出现warning对话框:

the preferred debugger engine for debugging binaries of type 'x86-
windows-msvc2008-pe-32bit' is not available.
the debugger engine 'Gdb engine' will be used as a fallback.
details: there is no CDB binary available for binaries in format 'x86-
windows-msvc2008-pe-32bit'

也没有跑到断点处,为什么呢?


------------------------------
3、后面试着将运行版本从
"Qt 4.7.3 for destop - msvc2008 (Qt SDK) debug"
转到
"Qt 4.7.3 for destop - MinGW (Qt SDK) debug"
编译成功,也能跑到断点处
这2者有什么区别么?


------------------------------
4、我安装完qt-vs-addin-1.1.9.exe后
打开vs2008,发现菜单栏里有了"Qt"项
且新建时,也是有
"Qt4 Projects"项目的

我试着新建一个Qt Application时
出错误对话框

unable to find a Qt build!
to solve this problem specify a Qt build

我发现Qt>Qt Options设置这里
Qt Versions是空的,但我不知道怎么设环境变量,因为前面那些目录搞蒙了我
怎么样才能在vs2008里跑起来qt呢?


------------------------------
5、关于移植的问题
假如我能在vs2008里跑Qt的程序了,或者在windows的qt creator里用vs2008能编的Qt的程序
放到mac或linux下的qt creator里不能跑了呢?

也就是说在windows下的Qt会不会用到window的库啊?

有没可能在vs2008的IDE下的Qt程序,一不小心用了mfc,或者com的东东,结果还能跑呢?
这样放到linux下是绝对不能跑了的?

另外,装了Qt插件的vs2008是不是都能编译Qt Creator的东西?
反过来也一样Qt Creator能编译vs2008里面写的Qt的程序?


------------------------------
6、还有一个Qt Creator使用vs2008还是mingw编译的问题
有谁有过经验的?2者哪个好一些?性能,编译速度等哪个好呢?

我曾经用msys+mingw编过ffmpeg,并使用gdb调试过ffmpeg的代码
发现在gdb调试状态下,断点后
它的代码不是按顺序来跑的

比如有以下代码
a();
b();
c();
d();

一般的IDE下,断点后,
跑的顺序为
a>b>c>d

但gdb显示给我的却是
a>d>b>c

当然或者其他顺序,据说gdb优化了的效果

不知道用Qt Creator时,会不会出现这种情况呢?
离线jdwx

只看该作者 1楼 发表于: 2011-08-24
回 楼主(szuzsq) 的帖子
http://qt.nokia.com/downloads/windows-cpp-vs2008
http://qt.nokia.com/downloads/qt-creator-binary-for-windows
你要是不写手机程序,就用这两个,不要用mingw编译,那个编译太慢,和vc编译器没法比。
QtCreator可以用VS2008的编译器,就需要下一个调试器,微软网站上有,调试的时候用。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
快速回复
限100 字节
 
上一个 下一个