On Mon, 6 Oct 2008 02:48:25 -0400, Jason E. Hale wrote: > On Sunday 05 October 2008 11:33:55 Max Brazhnikov wrote: > > You may use ldd to find qt4 libraries required by ports binary/libraries, > > eg: ~> ldd /usr/local/kde4/bin/kid3 |grep -i qt > > libQtSvg.so.4 => /usr/local/lib/qt4/libQtSvg.so.4 (0x28be3000) > > libQtCore.so.4 => /usr/local/lib/qt4/libQtCore.so.4 (0x28cc3000) > > libQtGui.so.4 => /usr/local/lib/qt4/libQtGui.so.4 (0x28ffe000) > > libQtNetwork.so.4 => /usr/local/lib/qt4/libQtNetwork.so.4 > > (0x2983b000) libQtDBus.so.4 => /usr/local/lib/qt4/libQtDBus.so.4 > > (0x29924000) libQtXml.so.4 => /usr/local/lib/qt4/libQtXml.so.4 > > (0x2997d000) > > > > corresponding qt components (corelib is omitted): > > QT_COMPONENTS= svg gui network dbus xml > > > > kde4 ports also need qt tools like qmake, uic. So the full line will be: > > QT_COMPONENTS= svg gui network dbus xml \ > > qmake_build moc_build rcc_build uic_build > > Thanks for your feedback. But if audio/kid3-kde4 requires all of those qt > components, then why does the port only have: > QT_COMPONENTS= corelib qmake_build moc_build This line is incorrect and may cause problems in a future. You can poke maintainer to fix this :)
USE_KDE4 and QT_COMPONENTS duplicate work in some sense. kdelibs4 depends on lots of qt4 components, so these components could be omitted for your port. But you cannot leave QT_COMPONENTS empty, because this will bring dependency on whole Qt4. Also not all kde ports really need rcc_build or uic_build for build (e.g. audio/kid3), but cmake fails to find qt if there is no rcc and/or uic binaries. So the minimal correct QT_COMPONENTS for kde4 ports will be: corelib qmake_build moc_build rcc_build uic_build I'm not satisfied with the situation, and hope I'll will work on this somedays. > Even the deskutils/kdeplasma-addons port has: > QT_COMPONENTS= opengl webkit xml network moc rcc uic > But if I run: > $ ldd /usr/local/kde4/lib/kde4/plasma_applet_luna.so | grep -i qt > libQtSvg.so.4 => /usr/local/lib/qt4/libQtSvg.so.4 (0x2830f000) > libQtCore.so.4 => /usr/local/lib/qt4/libQtCore.so.4 (0x28592000) > libQtGui.so.4 => /usr/local/lib/qt4/libQtGui.so.4 (0x288b5000) > libQtNetwork.so.4 => /usr/local/lib/qt4/libQtNetwork.so.4 > (0x2906f000) libQtDBus.so.4 => /usr/local/lib/qt4/libQtDBus.so.4 > (0x29151000) libQtXml.so.4 => /usr/local/lib/qt4/libQtXml.so.4 (0x291aa000) > libQtWebKit.so.4 => /usr/local/lib/qt4/libQtWebKit.so.4 (0x29a96000) > libQtOpenGL.so.4 => /usr/local/lib/qt4/libQtOpenGL.so.4 (0x2a571000) So, > svg and dbus are omitted. Why would that be? > Also, why do all of the KDE4 ports use moc, rcc, and uic instead of > moc_build, rcc_build, and uic_build? This will be fixed with update to 4.1.2 (already fixed in area51) Max _______________________________________________ kde-freebsd mailing list kde-freebsd@kde.org https://mail.kde.org/mailman/listinfo/kde-freebsd See also http://freebsd.kde.org/ for latest information