Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct
Convert a Project from Qt3 to Qt5
Monsif last edited by A Former User
I'm already making some small project in Qt3 and Qt5 with C++ , but my objective is to convert a big Project from Qt3 to Qt5 . It is possible ? what is the best way to do it ? step by step .
Thk you for your Help .
Hi and welcome
Yes its possible but lots and lots of changes. Qt3 is epic old.
But some of the classes might be gone and some method may no longer work so be
prepared to re-write some of it instead of porting.
It will most like take a long time if big project
and will be more difficult if you are new to Qt.
koahnig last edited by
Hi and welcome to devnet
Here is some information for converting from Qt3 to Qt4
The next step would be the conversion frm Qt4 to Qt5, which I know is actually a minor step.
Monsif last edited by
@mrjj Hi ,
thanks for your Help , I don't know really how to start .there is some Tolls there are ready to use ?
what do you advice me to do first ?
Its really hard to advice on as normally one would look over the source.
The best way depends on how cleanly the GUI is separated from
the data and if the app is made of well-defined modules or just a gigantic mess.
Also depends on what the app need.
It might use stuff from Qt3 that do not exist anymore etc.
Also if code is from when qt3 was new, then a new compiler might get billion warning etc.
Much have changed.
I'd recommend starting by the port to Qt 4 by completely forgetting that there's a compatibility module. This one was only there to help transition but it's not available in Qt 5 so there's no reasons to try to use it.
Then just try building the your project with Qt 4. If there are classes missing, check the porting guide to see with what to replace them.
If your big project contains several sub-projects, then just build them one after the other so you'll have less stuff to handle at once.
Once thing you can do while going through your sources is to remove the modules from the includes e.g. from
#include <QWidget>that will save you some time for the Qt 4 to Qt 5 transition.