[Moved] QMAKE or Qt Creator set up for bigger project...
Hi folks, it looks like I'm here as it was my second home (I never stop asking questions xD)...but, I really, really want know how to set up project for bigger projects. I've tried to edit QMAKE but it's not so flexible as I want. What I should do? I've tried QMake of QtCreator, but it didn't help... I'm on Windows 7 and using MSVC 2008 compiler... I am gonna mad with that...
I've also read: "Dynamically managing big projects with QtCreator":http://developer.qt.nokia.com/forums/viewthread/10020
Hi Peppy, it is somehow hard to give an answer. Are there any specifics you do not like or you like to discuss?
I am developing under Windows (was xp, now win7) with msvc2005. The project has a couple of libs and a couple of different applications using those libs.
At a time the projects have been transfered to linux with qt creator. So suddently I had different .pro files for each lib and each application. There I am using the subdirs template, which I found semi-convincing, but probably more because of different environment, ... However, somehow it is managable.
Not much info here to hook up to... but I'll try. If you like QMake, just go for it, the subdirs template is very easy to use. In my projects, I combine it with "DESTDIR", "OBJECTS_DIR" etc. so that it automatically compiles where I want, without interference from Qt Creator (not that I have anything against QtC, I joyously use it every day).
If a project is really big, going for CMake or SCons is probably better (or maybe there is something else available on Windows, I don't know). Newest CMake builds integrate with Qt very nicely - AFAIK, MOC gets automatically generated. SCons on the other hand is Python-based, and - at least for me - has a bit better syntax (let's be fair though - any build system you use WILL require some work and maintenance, it newer is free. Good thing about QMake is that Qt Creator natively supports it).
Just start the project, you can always update/ rewrite the build system if it does not suit you :) I always find this way of learning best for me.
Well, I want to discuss especially about QMake and QtCreator. I also have issues with QMAKE, because anytime I write any tree directory with project qmakes, it blows up my mind with any error, like a few hours ago with:
bq. qtmaind.lib(qtmain_win.obj):-1: warning: LNK4099: PDB 'vc_ib_1.pdb' was not found with 'c:\QtSDK\Desktop\Qt\4.7.4\msvc2008\lib\qtmaind.lib' or at 'C:\Projects\BlahBlah\bin\debug\all\vc_ib_1.pdb'; linking object as if no debug info
It's still open bug from version 4.4.0 (!)...I feel quite miserable...
I want to create project and prevent my mind against blow up...
Looks like MSVC-related one - no specific help from me on this one, sorry :(
But, as it seems to be library-connected, I'll guess: you might want to employ "LIBS" and "INCLUDEPATH" variable in your .pro.
Well, yes, I've done it that way but now it doesn't matter, it's not about errors but good project management...
[quote author="Peppy" date="1321473693"]Well, I want to discuss especially about QMake and QtCreator. ... It's still open bug from version 4.4.0 (!)...I feel quite miserable...
It is unclear to me what you are asking. Qt Creator was not released yet when Qt 4.4.0 came out, so what tools are you actually using, what are you trying to do, what are you doing, and what exact error do you get?
[I moved this to the Tools forum]
I would say that qmake is surely one of the best supported build systems in Creator. I use it on a daily basis, and it has one big advantage: It works on every system, that's involved in our project (that is Windows, Mac, and from time to time Linux). Qt libs itself is built using qmake, so it seems it's suited for a decent large project :-)
So, what are the actual goals you want to achieve?
Well, I think it will be as big as Qt SDK, but, the main problem I have is, how to setup that (by QMAKE)...I am quite Llama to do that (I understand to that, but I don't have )...I was also looking on Qt Creator QMake, but it didn't help me at all (yes, I was inspired by some useful functions)...