生成自动化:通常将QMake用于非Qt项目吗?


9

因此,我打算编写一个C ++库,并且希望它可以跨平台使用,并且因为该库将不处理UI,并且希望它具有尽可能小的依赖关系,所以我不会使用Qt (实际上,Qt并不能真正帮助我实现我想要的功能,我计划使用的只是STL和Boost)。现在,当涉及到构建跨平台项目时,我真的很喜欢QMake,因为它非常易于使用,并且我对此有经验。我也听到了有关CMake的好消息,尽管我真的怀疑它与QMake一样容易使用。

无论如何,这是我的问题:我应该坚持使用我所知道的构建自动化工具,还是QMake只是出于非Qt项目的背景?我应该以此为契机学习CMake吗?还是这两个有更好的选择?


绝对根本不知道这个问题与C有什么关系。
DeadMG

Answers:


7

该选择完全取决于您。

但我要指出的是,一个非常大的数量的基于Qt的项目已经从QMAKE搬走,并切换到CMake的,由于种种原因。我还将指出,没有技术上的原因让您更喜欢QMake。

就我个人而言,我使用CMake,因为它很好地承担了曾经是自动工具的角色,它使用一组工具和一种更易于理解和使用的语法来实现。但是我看到了使用QMake的吸引力-语法比CMake更简单,也许也许更易于理解和使用。


1
地狱,如果您愿意,可以使用Ant。

我决定尝试一下CMake,虽然它绝对不像QMake那样容易,但它并不像我想的那样困难,而且看起来也很强大。
拉斐尔

2

我曾经在一家公司(Interactive Network Technologies)工作,该公司创建了可在等高线,地震,Welllog和GIS空间中使用的SDK。C ++产品受多种Unix和Windows支持(当您必须定义NT与其他版本时)

当QT推出时,它已经有了QMake。我当时对make和Ant很熟悉。与QMake呆了三天之后,我把它扔了出去,只用了make。

尽管make可能会让人脑子复杂,但我还是建议使用它或Ant与QMake。


2
为什么?很明显,您不喜欢QMake,但是为什么呢?我认为您的推理将很有价值。
greyfade

1
如果我能记得,格雷福德,我会告诉你的。那是大约8年前:-(
Kristofer Hoch

1
在这种情况下,我认为值得重新讨论。:)
greyfade

也许吧,但是我在职业生涯中已经脱离了多个平台。我现在开发和分发Microsoft技术。
Kristofer Hoch
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.