On Fri, Aug 2, 2013 at 8:47 PM, Mark <[email protected]> wrote: > Hi, > > I followed the exact instructions from here: > http://community.kde.org/Frameworks/Building > > my .bashrc looks like: > export KF5=/home/kde-devel/kf5 > export QTDIR=/home/kde-devel/qt5dev/qtbase > export XDG_DATA_DIRS=$KF5/share:$XDG_DATA_DIRS:/usr/share > export XDG_CONFIG_DIRS=$KF5/etc/xdg:$XDG_CONFIG_DIRS:/etc/xdg > export PATH=$KF5/bin:$QTDIR/bin:$PATH > export > QT_PLUGIN_PATH=$KF5/lib/plugins:$KF5/lib64/plugins:$KF5/lib/x86_64-linux-gnu/plugins:$QTDIR/plugins:$QT_PLUGIN_PATH > export > QML2_IMPORT_PATH=$KF5/lib/qml:$KF5/lib64/qml:$KF5/lib/x86_64-linux-gnu/qml:$QTDIR/qml > > export CMAKE_PREFIX_PATH=$KF5:$CMAKE_PREFIX_PATH > > Building Qt from the dev branch: all ok, no problem at all. > Building frameworks: it compiles and probably because it doesn't need > the wrong linked libs, but CMakeCache.txt includes the following: > //The directory containing a CMake configuration file for Qt5OpenGL. > Qt5OpenGL_DIR:PATH=/usr/lib64/cmake/Qt5OpenGL > > //The directory containing a CMake configuration file for Qt5PrintSupport. > Qt5PrintSupport_DIR:PATH=/home/kde-devel/qt5dev/qtbase/lib/cmake/Qt5PrintSupport > > //The directory containing a CMake configuration file for Qt5Qml. > Qt5Qml_DIR:PATH=/home/kde-devel/qt5dev/qtbase/lib/cmake/Qt5Qml > > //The directory containing a CMake configuration file for Qt5Quick. > Qt5Quick_DIR:PATH=/home/kde-devel/qt5dev/qtbase/lib/cmake/Qt5Quick > > //The directory containing a CMake configuration file for Qt5Script. > Qt5Script_DIR:PATH=/home/kde-devel/qt5dev/qtbase/lib/cmake/Qt5Script > > //The directory containing a CMake configuration file for Qt5Sensors. > Qt5Sensors_DIR:PATH=/usr/lib64/cmake/Qt5Sensors > > //The directory containing a CMake configuration file for Qt5Svg. > Qt5Svg_DIR:PATH=/home/kde-devel/qt5dev/qtbase/lib/cmake/Qt5Svg > > //The directory containing a CMake configuration file for Qt5Test. > Qt5Test_DIR:PATH=/home/kde-devel/qt5dev/qtbase/lib/cmake/Qt5Test > > //The directory containing a CMake configuration file for Qt5UiTools. > Qt5UiTools_DIR:PATH=/home/kde-devel/qt5dev/qtbase/lib/cmake/Qt5UiTools > > //The directory containing a CMake configuration file for Qt5WebKitWidgets. > Qt5WebKitWidgets_DIR:PATH=/usr/lib64/cmake/Qt5WebKitWidgets > > //The directory containing a CMake configuration file for Qt5WebKit. > Qt5WebKit_DIR:PATH=/usr/lib64/cmake/Qt5WebKit > > --- > > Note that Qt5OpenGL, Qt5Sensors and Qt5WebKit have the wrong path. It > should start with(in my case): > "/home/kde-devel/qt5dev/qtbase/lib/cmake/<module>" > > For frameworks this seems to compile just fine. I'm guessing > frameworks never links to any of those libraries. > > However, for plasma the story is a bit different. It includes the > following lines in CMakeCache.txt: > //The directory containing a CMake configuration file for Qt5Network. > Qt5Network_DIR:PATH=/home/kde-devel/qt5dev/qtbase/lib/cmake/Qt5Network > > //The directory containing a CMake configuration file for Qt5OpenGL. > Qt5OpenGL_DIR:PATH=/usr/lib64/cmake/Qt5OpenGL > > //The directory containing a CMake configuration file for Qt5PrintSupport. > Qt5PrintSupport_DIR:PATH=/home/kde-devel/qt5dev/qtbase/lib/cmake/Qt5PrintSupport > > //The directory containing a CMake configuration file for Qt5Qml. > Qt5Qml_DIR:PATH=/usr/lib64/cmake/Qt5Qml > > //The directory containing a CMake configuration file for Qt5Quick. > Qt5Quick_DIR:PATH=/usr/lib64/cmake/Qt5Quick > > //The directory containing a CMake configuration file for Qt5ScriptTools. > Qt5ScriptTools_DIR:PATH=/home/kde-devel/qt5dev/qtbase/lib/cmake/Qt5ScriptTools > > //The directory containing a CMake configuration file for Qt5Script. > Qt5Script_DIR:PATH=/home/kde-devel/qt5dev/qtbase/lib/cmake/Qt5Script > > //The directory containing a CMake configuration file for Qt5Sensors. > Qt5Sensors_DIR:PATH=/usr/lib64/cmake/Qt5Sensors > > ------ > There Qt5Qml, Qt5Quick and Qt5Sensors are linked wrong where Qt5Qml > and Qt5Quick are an issue. They cause the following linker errors: > > /usr/lib/libQt5Quick.so.5.1.0: undefined reference to > `v8::V8::DisposeGlobal(v8::internal::Object**)' > /usr/lib/libQt5Qml.so.5.1.0: undefined reference to > `v8::V8::MakeWeak(v8::internal::Object**, void*, void > (*)(v8::Persistent<v8::Value>, void*))' > /usr/lib/libQt5Quick.so.5.1.0: undefined reference to > `v8::FunctionTemplate::New(v8::Handle<v8::Value> (*)(v8::Arguments > const&), v8::Handle<v8::Value>, v8::Handle<v8::Signature>)' > /usr/lib/libQt5Qml.so.5.1.0: undefined reference to > `v8::HeapProfiler::TakeSnapshot(v8::Handle<v8::String>, > v8::HeapSnapshot::Type, v8::ActivityControl*)' > /usr/lib/libQt5Quick.so.5.1.0: undefined reference to > `v8::V8::GlobalizeReference(v8::internal::Object**)' > /usr/lib/libQt5Quick.so.5.1.0: undefined reference to > `v8::Object::CheckedGetInternalField(int)' > > Now manually correcting the paths for Qt5Qml and Qt5Quick works and > makes plasma-shell (the one giving me the linker errors) compile just > fine. I'm guessing that's not the intended way ;) > > Is this a known issue and do i need to update something to fix it? > Note that i have the latest version of the KF5 chain since ~2 hours > before this mail. That includes "Extra CMake Modules" where the last > commit is: > > commit 7f219e376523ae2a3559b45bf6eea8daa8d82765 > Author: Kevin Ottens <[email protected]> > Date: Thu Jul 25 08:16:28 2013 +0200 > > Add KDE4Attic, KUnitConversion and KIO to the staging list > > > > Cheers, > Mark
Note: i fixed this (or actually worked around it) by removing my system Qt 5.1 packages since only QtCreator was dependent on that. I'm using ArchLinux btw. I wasn't expecting those system packages to be a problem because they had a lower version. Apparently that is a problem.. After that was removed the rest compiled just fine. _______________________________________________ Kde-frameworks-devel mailing list [email protected] https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
