On Sun, Mar 11, 2018 at 08:40:56PM +0700, Robin Atwood wrote: > On Sunday 11 March 2018, Michael Pyne wrote: > > > Yes, but the problem is the /usr/include/kdialog.h when it should be > > > finding /usr/include/KF5/KDELibs4Support/kdialog.h. I have > > > find_package(Qt5 Widgets... already. > > > > Sounds like 2 problems I think. > > > > First you need to fix the kdialog.h include in your software (or help > > us identify where it is broken in the KF5 build system). Is your build > > system already looking for KF5::KDELibs4Support, and marking your build > > target as depending on that library? > > > > Even with this incorrect kdialog, you would think it would still find > > the right QDialog though. That's why it sounds like there's 2 problems. > > I think the issue here is that there is no longer a QtGui/QDialog. The > > right path would be in QtWidgets/QDialog with Qt5. It's better (and now > > recommended) just to use a '#include <QDialog>' (and in general, > > #include <QClassname>). > > I added KF5::KDE4Support to the target link libraries and that problem went > away. This raises the problem: how do I know which link libraries I need? Is > there a list of dependencies somewhere?
I don't know of anything quite that direct. https://community.kde.org/Frameworks/Porting_Notes is the best reference, but you should also look at the kde-dev-scripts git repository (part of our "KDE SDK" offerings), under the kf5/ directory, where a bunch of auto-migration scripts can be found. Easier to automate the migration to the extent possible, then use the Porting_Notes wiki page to get guidance on the rest. There will undoubtedly still be a few mysteries to solve after that, especially if you decide to also start migrating over to some of the new Qt5-based features in the process. But between those two resources you can get most, if not all, of a working migration completed. Regards, - Michael Pyne