So, I'm planning to write a C++ library and I want it to be cross-platform, and as this library won't deal with UI and I want it to have as little dependencies as possible, I won't be using Qt (actually Qt won't really help me to achieve what I want, all I plan on using is STL and Boost). Now when it comes to build a cross-platform project, I really like QMake as it's extremely easy to use and I have experience with it. I also heard good things about CMake, though I really doubt it's as easy to use as QMake.

Anyway, here is my question: Should I stick with build automation tool that I know or is QMake just out of context for a non-Qt project? Should I take this as an opportunity to learn CMake? Or is there a better alternative to these two?

  • Definitely not seeing what this question has to do with C, at all.
    – DeadMG
    Commented Aug 7, 2011 at 0:11

2 Answers 2


That choice is entirely up to you.

But I will point out that a very large number of Qt-based projects have moved away from QMake and switched to CMake, for various reasons. I will also point out that there is no technical reason that you can't use QMake if you prefer it.

Personally, I use CMake, because it quite well takes the role that autotools was once preferred for, doing so with a set of tools and a syntax that's far easier to understand and work in. But I see the appeal of using QMake - the syntax is much simpler and may perhaps be easier to understand and use than CMake.

  • 1
    Hell, you could use Ant if you felt like.
    – user7007
    Commented Aug 6, 2011 at 23:46
  • I've decided to give CMake a try and while it's definitely n not as easy as QMake it's not nearly as difficult as I thought it would be and it seems pretty powerful too.
    – Raphael
    Commented Aug 7, 2011 at 16:19

I used to work for a company (Interactive Network Technologies) that created SDKs for use in Contouring, Seismic, Welllog, and GIS space. The C++ product was supported for multiple varieties of Unix, and Windows (back when you had to define NT versus other flavors)

When QT came out, it already had QMake; I was familiar with make and Ant at the time. AFter spending three days with QMake, I threw it out and simply used make.

Although make can be brainmeltingly complicated, I'd suggest using it or Ant versus QMake.

  • 2
    Why? It's clear that you don't like QMake, but why? I think your reasoning would be valuable to understand.
    – greyfade
    Commented Aug 7, 2011 at 6:03
  • 1
    If I could remember, greyfade, I would tell you. That was about 8 years ago :-( Commented Aug 8, 2011 at 12:49
  • 1
    In that case, I submit that it's worth a revisit. :)
    – greyfade
    Commented Aug 8, 2011 at 15:02
  • Perhaps, but I've moved away from multiple platforms in my career. I now develop and distribute Microsoft technologies. Commented Aug 8, 2011 at 15:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.