2011-08-16 20 views
2

我想问你的意见关于无尽的“Qt vs wxWidgets”问题的一个具体方面。在Windows中使用wxWidgets,我可能会继续使用我最喜欢的构建工具和编译器(在我的例子中是Visual Studio)。我只需要将wxWidgets include和lib目录添加到编译器/链接器路径。必要时,我只需打开一些wxWidgets表单设计器(如DialogBlocks)并进行表单布局。可执行文件没有任何额外的依赖关系,不会导致重新分发中的任何问题。另一方面,Qt带有自己的IDE,它往往是主要的开发工具(我不想)。它安装MinGW。它使用qmake,这是将Qt集成到现有构建环境中的又一个挑战。我不知道如何在Qt应用程序中使用我用VC++开发的现有库。我可以继续使用Visual Studio吗?还是需要完全切换到Qt Creator?或者同时使用两者,在Visual Studio中构建除UI以外的所有内容,并在Qt Creator中构建UI?如何重新分配基于Qt的应用程序:我应该在目标计算机上安装MinGW吗?Qt在Windows中:构建环境和再分配问题

所有这些问题如何解决 - 我需要一些C++开发人员在Windows中使用Qt的指导和意见。

编辑:它看起来像最有前途的方向是Visual Studio插件和CMake。我发现Qt插件支持VS2010,但它需要从源重建Qt。对于VS2008这个插件使用二进制Qt安装 - 足够好。

+0

这确实是主观的;它属于程序员。 +1虽然是个好问题。如果你真的想使用Qt,我怀疑你几乎被Qt Creator困住了。相关:http://programmers.stackexchange.com/questions/88685/why-dont-all-use-qt/88689#88689 –

+0

我没有意识到Qt的windows构建环境太复杂了。几年前我在Qt上选择了wxWidgets,因为当时有更好的许可证。现在我很高兴我做到了。我经常需要通过建立一个构建环境来指导客户,而wxWidgets对于其中的一些人来说是足够的挑战。 – ravenspoint

+0

除了所有这些问题,我发现VC++ CRT内存泄漏检测器报告了很多(错误?)内存泄漏,与Qt一起工作,导致无法跟踪我自己的泄漏。我也很高兴我为我的真实项目选择了wxWidgets ... –

回答

1

您可以使用Visual Studio。有一个Visual Studio集成插件,使得在Visual Studio中使用Qt进行开发变得容易很多。

至于wxWidgets与Qt的辩论......我使用两个(在不同的项目)。我不得不说,我宁愿使用Qt - 它具有较少的错误海事组织,并且一般情况下,如果您在框架方面存在问题,则可以使用更简单的解决方法(Qt4在这方面比Qt3好得多,因为可以访问'pimpl'数据)。但是,对于Qt,分发要复杂一些,因为您必须确保已经在发行版中正确设置了任何插件(请务必检查它是否适用于未安装Qt的干净机器)。

+0

我有VS2010,Qt集成不可用。我想我会回到VS2008,让Qt感觉更好。 –

+0

vs2010垃圾无论如何;) – Pete

1

你可以下载Qt“源代码”,看看here for the latest version。您可使用所提供的配置工具和MS” NMAKE youself这个库...

例如,我的典型的构建是这样的:

configure -shared -release -opensource -no-webkit -nomake demos -nomake examples 
nmake 

这将建立释放模式的Qt的DLL,假设你想要使用LGPL许可证(带有-opensource标志),没有webkit,并在调用nmake时不会构建演示和示例......当然,您将不得不看看configure提供的所有可能选项

+0

请注意,“开源许可证”是LGPL,这是一个相对限制性的许可证。不像GPL那样限制,但肯定比MIT/BSD/BSL/MS-PL /等更具限制性。 –

+0

@比利:谢谢,为了清楚起见,我稍微改了一下我的答案。虽然答案是作为我典型的配置调用的例子,但我同意我应该提到LGPL。 –

2

您不必使用整个Qt SDK,只能安装libraries for VS(如果您愿意,也可以从源代码构建)。预构建的l库是用于VS2008的,但是有一个VS2010的makepec,所以你可以自己构建一个,如果需要的话),并使用Visual Studio integration

1

您不必使用Qt Creator,许多人使用其他IDE或简单的文本编辑器。

qmake不难使用,从模板配置你可以很容易地手工修改项目文件。事实上,qmake会生成一个基本的项目文件供您开始使用。

像在任何其他项目中一样使用现有库。

你不需要安装mingw,你可以在你的应用程序目录中包含重要的DLL;但这与任何其他“DLL地狱”问题都是一样的问题。

1

如果您使用cmake作为构建系统,您可以使用它为Visual Studio(以及eclipse,以及任何操作系统上的普通Makefiles和...)生成项目文件。只需安装cmake GUI,并在相应的下拉菜单中选择visual studio [myversion]。唯一要记住的是,你需要改变你的项目结构(例如添加文件)到cmake CMakeLists.txt文件。

设置cmake + Qt非常容易,你只需要弄清楚一次。谷歌搜索一下应该让这个设置立即运行。