Entonces, estoy planeando escribir una biblioteca C ++ y quiero que sea multiplataforma, y como esta biblioteca no tratará con la interfaz de usuario y quiero que tenga la menor cantidad de dependencias posible, no usaré Qt (en realidad, Qt no me ayudará a lograr lo que quiero, todo lo que planeo usar es STL y Boost). Ahora, cuando se trata de construir un proyecto multiplataforma, realmente me gusta QMake, ya que es extremadamente fácil de usar y tengo experiencia con él. También escuché cosas buenas sobre CMake, aunque realmente dudo que sea tan fácil de usar como QMake.
De todos modos, esta es mi pregunta: ¿debo seguir con la herramienta de automatización de compilación que conozco o QMake está fuera de contexto para un proyecto que no es Qt? ¿Debo aprovechar esto como una oportunidad para aprender CMake? ¿O hay una mejor alternativa a estos dos?
Respuestas:
Esa elección es totalmente suya.
Pero voy a señalar que un muy gran número de proyectos basadas en Qt se han alejado de QMake y cambiado a CMake, por diversas razones. También señalaré que no existe una razón técnica por la que no pueda usar QMake si lo prefiere.
Personalmente, uso CMake, porque toma bastante bien el papel por el que antes se preferían las herramientas automáticas, al hacerlo con un conjunto de herramientas y una sintaxis que es mucho más fácil de entender y trabajar. Pero veo el atractivo de usar QMake: la sintaxis es mucho más simple y quizás sea más fácil de entender y usar que CMake.
fuente
Solía trabajar para una empresa ( Interactive Network Technologies ) que creó SDK para su uso en el contorno, sísmica, Welllog y espacio SIG. El producto C ++ era compatible con múltiples variedades de Unix y Windows (cuando tenía que definir NT frente a otros sabores)
Cuando salió QT, ya tenía QMake; Estaba familiarizado con Make y Ant en ese momento. Después de pasar tres días con QMake, lo tiré y simplemente usé make.
Aunque make puede ser muy complicado, sugiero usarlo o Ant versus QMake.
fuente