views:

1952

answers:

8

Hi!

I would like to develop cross-platform applications using C++ and QT4. I code on both Linux and Windows (MinGW).

Currently I'm using KDevelop and it's QMake integration. On Windows I'm trying out Eclipse with QT integration plugin. However moving sources and updating profiles/IDE project files on both systems is tedious.

I'm looking into using CMake as it can generate Makefiles, KDevelop project files and Eclipse project files.

What's your opinion? What are you using for such kind of development?

A: 

What about Qt Designer?

Hank Gay
Yeah, I've tried it. It needs waiting until release version. This beta misses a few things, eg. code completion does not see base class methods for derived classes.
Marcin Gil
Arrgh. I was meaning QT Creator.. QT Designer is for forms only and not for code writing AFAIK.
Marcin Gil
+10  A: 

What about QtCreator? It's still in beta but it's very light and it's really a joy to code with it.

hyperboreean
Yes, it looks interesting but misses a few things IMHO; code completion doesn't work as should, there's no support for syncing translations (well, Eclipse doesn't have it too...). However I've just took a peek on this so maybe missed a few features.
Marcin Gil
Henrik Hartz
Hmm.. does it show base class methods on derived classes?
Marcin Gil
Unfortunately, their IDE sucks. Qt integration for Visual Studio is great
chester89
+3  A: 

i don't get why you have to use an IDE on both platforms. i use KDevelop on Linux, and for each test i just sync the sources to mac and windows and make/test locally on each. if something breaks, i fix it in the original sources, on Linux.

it's very seldom that i want to edit something on mac/win, and for that any decent editor is enough (BBedit/Notepad++)

Javier
If you use KDevelop on Linux, how do you build your software on mac/win?
Marcin Gil
btw. how do you setup your KDevelop so it can see/go to QT4's definitions?
Marcin Gil
i don't use KDevelop's doc search tool. i keep a QtAssitant window open (or just the Qt HTML Docs in konqueror)
Javier
+3  A: 

I would recommend CMake for this task. Once you get the hang of it, it's pretty easy to create cross-platform applications or libraries that use QT, using the FindQT CMake module.

There are open-source QT and KDE projects that use CMake as their build system, so you can look at their code if you need to see real use cases (I did).

kshahar
Yeah; I've built a CMake bare system that even does translation updating. However the project in Eclipse looks fugly..
Marcin Gil
+2  A: 

qt-apps.org environment tools has loads of free development environments listed, and much more general development tools. kde-apps.org environment tools has yet another bunch of tools, where some of them will work on Windows too.

Johannes Schaub - litb
+1  A: 

You can use the Qt plugin that you mention with Eclipse on Windows and Linux. The only thing you need to do when you move from one platform to the next is run qmake again to ensure your make files are correct and up-to-date. But I believe (I have not tried it) you can configure your eclipse environments to handle the qmake execution when it does an auto build. Note that the Qt plugin also allows you to do everything you do in Qt Designer.

borq
+5  A: 

I've been using the new QtCreator and like it so far. Still beta though and may be missing a few tools or features that you need. QtDesigner is integrated with it. It uses QMake project (.pro) files behind the scenes, so you or other programmers can just use those directly on the command line (qmake and make) along with their favorite text editor if they don't want or can't use an IDE at some point. http://trolltech.com/developer/qt-creator

Reed Hedges
A: 

Eclipse is a very very good candidate ( you get a nice SVN integration, Mylyn for tasks which is awesome and a world of other awesome plugins ) but sometimes you have to deal with weird problems. Otherwise it is a great IDE. Note: Really good for Java development.

Karol Wilk