I've started trying to get myth to compile on QT4. So far, I have libmyth compiling with no errors.
I put three patches at http://birch.colincross.com/myth-qt4/ mythtv-libmyth-qt4prep.diff: these changes are compatible with qt3 and could be commited to SVN <http://birch.colincross.com/myth-qt4/mythtv-libmyth-qt4prep.diff>. Most of the changes are converting cerr's to VERBOSE. In QT4, cerr << QString("test") doesn't work, but the VERBOSE macro can be fixed by using a QTextStream. A few changes convert QStringList list = QString("test") to QStringList list = QStringList(QString("test")), and the rest should be converting constants like black to Qt::black, because QWidget no long inherits from the Qt class (which is actually a namespace in QT4). Only changes libmyth, I haven't gotten to the rest yet. mythtv-qt3to4.diff <http://birch.colincross.com/myth-qt4/mythtv-qt3to4.diff>: These changes are created by QT4's automatic porting tool, qt3to4, after the previous patch has been applied. qt3to4 turns on qt3support in the .pro files, and renames lots of classes like QSocket to Q3Socket when the class no longer exists in the base QT4 libraries, but still exists in the QT3 support library. This affects the entire myth tree. mythtv-libmyth-qt4-changes.diff <http://birch.colincross.com/myth-qt4/mythtv-libmyth-qt4-changes.diff>: These are the rest of the changes needed to get libmyth to compile. Replaces features that have been removed or APIs that have changed and are not in the QT3 support libraries. This code compiles, but obviously has not been tested since the rest of myth doesn't compile yet. Its mostly there to give an idea of what will have to be changed for QT4 support. For anyone who is interested, I have some QT4 RPMs that work on Fedora Core 2 and 3 (at least), that mostly don't clobber existing QT3 installs. Only the devel tools like qmake, moc, uic, linguist, etc. get overwritten in /usr/bin, but they are still available through /usr/lib/qt-3.3/bin, although I haven't been able to get myth to compile under QT3 by using /usr/lib/qt3-3/bin/qmake as it still picks up the QT4 qmake for subdirectories . You can find the RPMs at http://rpm.colincross.com/ _______________________________________________ mythtv-dev mailing list [email protected] http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
