0

将相关的 Qt Libs 和标头(开源版本)添加到项目存储库是否有意义,或者我应该只从 sdk 目录中引用它们?


我(一个人)正在开发一个跨平台(windows/linux)c++ 应用程序,它将使用许多第三方开源库,包括 Qt、OpenCV、log4cpp 等等。

为了方便(快速创建 GUI),我开始在 Qt Creator 中进行开发。目前,我在项目目录之外的 Linux 和 Windows 上都安装了 Qt Sdk。

我计划迁移到 CMAKE 以获得更好的可配置性,例如源外构建和独立于 Qt Creator,我希望将所有依赖项包含在项目目录结构中 - 这样我或其他任何人都可以签出项目并且无需安装任何其他依赖项即可构建。

我已经将除了 Qt 之外的所有库添加到目录中,因为我有点不确定它是否值得——似乎 CMAKE 依赖于 Qt Sdk 来编译 Qt 特定文件,即 moc、ui 等......(见这里)这是案子 ?还是有更适合的构建工具?(最初我打算使用 Scons,但我决定不使用,因为似乎支持有限……而且自 2010 年以来就没有开发过Qt4 工具,这也没有激发信心。)

4

1 回答 1

4

Qt 太大而不能放在项目目录中,即使您只包含它的一个模块。此外,您在 CMake 中有一些方便的功能来使用 Qt(添加 moc、rcc、ui)。您甚至可以自己编写这些函数(很快,它们只需添加一个预构建命令)。

对于构建操作:您将需要使用 CMake 不提供的moc(也许ui, rcc, ...)。因此,想要构建您的应用程序的人必须安装 Qt SDK。幸运的是,这种安装非常简单。

于 2012-10-25T15:42:13.493 回答