PDA

View Full Version : qmake sux a lot



singermornings
27th January 2009, 21:10
I'm tired of qmake.

qmake is the worst makefile generator that i have tried.

For example, if I want to support xml documents, i must add "xml" at QT variable. What the fuck? qmake should automatically recognize and add it!

Other example: I can't compile any qt project from my MacOSX to a Windows executable. qmake doesn't supports cross-compiling? it really sux

Finally, if I want to use qmake to install binary files on macos and windows, is imposible.

I want qmake installs a .exe file when i do a make install on windows and qmake installs a .app directory when i do a make install on MacOSX! Also, I want qmake installs a .bin file and gives execution rights to it when i do a make install on linux, but I think qmake will never be able to do

qmake looks like a beta software. Is only a toy for kids...

faldzip
27th January 2009, 23:05
I'm tired of qmake.
So don't use it.

Other example: I can't compile any qt project from my MacOSX to a Windows executable. qmake doesn't supports cross-compiling? it really sux
I don't understand that. You want to compile Qt project on MacOS X into Windows exe? So what qmake has to do with it? Compile it? I don't have any problems making makefiles from .pro file, on Windows I make MSVC makefile and on linux I make suitable makefile for my linux. Maybe take a look into Qt Assistant and type "qmake" in it.

I want qmake installs a .exe file when i do a make install on windows and qmake installs a .app directory when i do a make install on MacOSX! Also, I want qmake installs a .bin file and gives execution rights to it when i do a make install on linux, but I think qmake will never be able to do
Maybe use a suggestions page on Qt Software web page, if you have any suggestions.

And finally, how can we help you? If you dont like qmake or Qt at all, you have to look for suitable command for your OS, which do such a thing as "remove". Try maybe "rm -rf /your_qt_dir" or something like "rmdir". I think Google can help you.

wysota
28th January 2009, 00:27
qmake is the worst makefile generator that i have tried.
I agree with my preposter - don't use it if you don't like it but it has nothing to do with your problems.


For example, if I want to support xml documents, i must add "xml" at QT variable. What the fuck? qmake should automatically recognize and add it!
You are right. In fact it should detect what you want to do with them and write the application for you. Or maybe it should even have a --magically-deposit-lots-of-money-on-my-bank-account mode :)

Qt is composed of a set of libraries. By default qmake assumes you want to use the "core" and "gui" ones as they are the most commonly used one. If you want to use the xml library or the networking library, you have to tell qmake you want your application linked against it. It's not possible to determine that just by looking at your source code and on the other hand there is no point in linking against libxml, ssl, opengl and lots of other dependencies if you don't use them so the library is disabled by default.

If you want to turn it on by default then that is possible - add "QT+=xml" to the qmake.conf file located in the mkspecs subdirectory appropriate for your platform.


Other example: I can't compile any qt project from my MacOSX to a Windows executable. qmake doesn't supports cross-compiling? it really sux
Sure it does but you actually need to have a cross compiler and tell qmake you want to use it by setting an appropriate specs for it. QMake doesn't read minds, it won't guess it by itself.



Finally, if I want to use qmake to install binary files on macos and windows, is imposible.
Strange, works fine for me :) Well... for Windows at least - I don't have a Mac :( If anyone wants to donate me one, I'll be happy to accept it.


I want qmake installs a .exe file when i do a make install on windows and qmake installs a .app directory when i do a make install on MacOSX! Also, I want qmake installs a .bin file and gives execution rights to it when i do a make install on linux, but I think qmake will never be able to do
What exactly did you try? Qt uses qmake to install itself and it seems to do everything you want to be done so... I think the blame is on you not on QMake.


qmake looks like a beta software. Is only a toy for kids...
True. I sometimes feel like a kid when playing with qmake and I pity people who can't admit they don't know how to do something but instead they blame the hammer for not being able to strike the nail straight. We even have a proverb in Poland about it - that a poor balerina blames even the edge of her skirt for her bad dance.

Sorry for my malicious words - they wouldn't be here if you didn't use one specific word in your post. I'm sure you know which one :)

Oh... one more thing - QMake is not tied to Qt and Qt is not tied to QMake (although QMake is implemented using a subset of QtCore - but it doesn't depend on Qt!). You can use either of them without the other one. QMake is not perfect, in fact it has many problems and limitations but none of those you described actually.

kandalf
28th January 2009, 03:36
I don't think this guy is asking for help here, what leads me towards two thoughts.
First: that post shouldn't be here, since this is a forum to help each other using one of the most impresive tools in the last time (yeah, I know, this last part is a little of 'propaganda')
Second, I would save my words explaining the goodness or badness of qmake for those who really need( or want help) to acomplish certain task related to what this forum was made for.

So, I would resume my answer (if it really deserves to be called that way) to:
If you don't like a tool, don't use it. Use an alternative. Or if you really want to use it and don't fit your needs, make it better, it is open source, or complete the result by hand by adding what this tool lacks of.

Cheers.

Brandybuck
28th January 2009, 22:49
Funny, I've always thought that QMake was the best makefile generator out there! But I think the poster doesn't really want a makefile generator, but a full blown project management system.

lni
28th January 2009, 23:11
qmake can be improved though. But I haven't found any tool that is better than qmake.

FORTRAN support: We have so many legacy codes in FORTRAN...I know I can write the rules for qmake, but FORTRAN should be supported internally in qmake...

wysota
29th January 2009, 08:33
Let's remember QMake is suited mainly for C++ - the specs we have are related to C++ compilers.