You are not logged in.
Hello everyone
I'm trying to compile the amarok from sources on the Arch, which is up to date (18:38) as of December 6 and I'm getting this error:
[ 0%] Built target amarokshared_automoc
Scanning dependencies of target amarokshared
[ 1%] Building CXX object shared/CMakeFiles/amarokshared.dir/amarokshared_automoc.cpp.o
[ 1%] Linking CXX shared library ../lib/libamarokshared.so
[ 2%] Built target amarokshared
[ 2%] Built target amarokcore_automoc
[ 2%] Linking CXX shared library ../../lib/libamarokcore.so
[ 8%] Built target amarokcore
[ 8%] Built target amarok-transcoding_automoc
[ 8%] Linking CXX shared library ../../lib/libamarok-transcoding.so
[ 9%] Built target amarok-transcoding
[ 9%] Built target amaroklib_automoc
[ 9%] Built target amarokpud
[ 9%] Built target amarokocsclient_automoc
[ 12%] Built target amarokocsclient
[ 12%] Linking CXX shared library ../lib/libamaroklib.so
[ 64%] Built target amaroklib
[ 64%] Built target amarok_automoc
Scanning dependencies of target amarok
[ 64%] Building CXX object src/CMakeFiles/amarok.dir/amarok_automoc.cpp.o
[ 64%] Linking CXX executable amarok
[ 64%] Built target amarok
[ 64%] Built target amarok_collection-daapcollection_automoc
[ 64%] Linking CXX shared module ../../../../lib/amarok_collection-daapcollection.so
[ 65%] Built target amarok_collection-daapcollection
[ 65%] Built target amarok_collection-audiocdcollection_automoc
[ 65%] Linking CXX shared module ../../../../lib/amarok_collection-audiocdcollection.so
[ 66%] Built target amarok_collection-audiocdcollection
[ 66%] Built target amarok_collection-mtpcollection_automoc
[ 66%] Linking CXX shared module ../../../../lib/amarok_collection-mtpcollection.so
[ 67%] Built target amarok_collection-mtpcollection
[ 67%] Built target amarok_collection-umscollection_automoc
[ 67%] Linking CXX shared module ../../../../lib/amarok_collection-umscollection.so
[ 68%] Built target amarok_collection-umscollection
[ 68%] Built target amarok-sqlcollection_automoc
[ 68%] Linking CXX shared library ../../../../../lib/libamarok-sqlcollection.so
[ 70%] Built target amarok-sqlcollection
[ 70%] Built target amarok_collection-mysqlcollection_automoc
[ 70%] Linking CXX shared module ../../../../../../lib/amarok_collection-mysqlcollection.so
[ 70%] Built target amarok_collection-mysqlcollection
Generating moc_Query.cpp
Generating moc_ProxyResolver.cpp
Generating moc_PlaydarQueryMaker.cpp
Generating moc_PlaydarCollection.cpp
Generating moc_Controller.cpp
[ 70%] Built target amarok_collection-playdarcollection_automoc
Scanning dependencies of target amarok_collection-playdarcollection
[ 70%] Building CXX object src/core-impl/collections/playdarcollection/CMakeFiles/amarok_collection-playdarcollection.dir/amarok_collection-playdarcollection_automoc.cpp.o
[ 70%] Linking CXX shared module ../../../../lib/amarok_collection-playdarcollection.so
[ 71%] Built target amarok_collection-playdarcollection
[ 71%] Built target amarok_collection-upnpcollection_automoc
[ 71%] Linking CXX shared module ../../../../lib/amarok_collection-upnpcollection.so
[ 72%] Built target amarok_collection-upnpcollection
[ 72%] Built target amarok_storage-mysqlestorage_automoc
[ 72%] Linking CXX shared module ../../../../../lib/amarok_storage-mysqlestorage.so
[ 72%] Built target amarok_storage-mysqlestorage
[ 72%] Built target amarok_storage-mysqlserverstorage_automoc
[ 72%] Linking CXX shared module ../../../../../lib/amarok_storage-mysqlserverstorage.so
[ 73%] Built target amarok_storage-mysqlserverstorage
[ 73%] Built target amarok_context_applet_albums_automoc
[ 73%] Linking CXX shared module ../../../../lib/amarok_context_applet_albums.so
[ 74%] Built target amarok_context_applet_albums
[ 74%] Built target amarok_context_applet_currenttrack_automoc
[ 74%] Linking CXX shared module ../../../../lib/amarok_context_applet_currenttrack.so
[ 75%] Built target amarok_context_applet_currenttrack
[ 75%] Built target amarok_context_applet_info_automoc
[ 75%] Building CXX object src/context/applets/info/CMakeFiles/amarok_context_applet_info.dir/InfoApplet.cpp.o
In file included from /home/angel/Documents/kde/amarok/src/context/applets/info/InfoApplet.cpp:29:0:
/usr/include/KDE/KGraphicsWebView:1:10: фатальная ошибка: ../kgraphicswebview.h: Нет такого файла или каталога
#include "../kgraphicswebview.h"
^~~~~~~~~~~~~~~~~~~~~~~
компиляция прервана.
make[2]: *** [src/context/applets/info/CMakeFiles/amarok_context_applet_info.dir/build.make:87: src/context/applets/info/CMakeFiles/amarok_context_applet_info.dir/InfoApplet.cpp.o] Ошибка 1
make[1]: *** [CMakeFiles/Makefile2:2795: src/context/applets/info/CMakeFiles/amarok_context_applet_info.dir/all] Ошибка 2
make: *** [Makefile:141: all] Ошибка 2
Sorry about localized output. As far as I can investigate, this one is caused by the /usr/include/KDE/KGraphicsWebView file. Which contains just two strings:
1 #include "../kgraphicswebview.h"
2
(the second is the empty one). So. What i tried is to symlink KGraphicsWebView to /usr/include/KF5/KDEWebKit/kgraphicswebview.h
But no luck - it falls, when it searches for the nested #include'-s. As you can guess, if i change KGraphicsWebView to
#include "/usr/include/KF5/KDEWebKit/kgraphicswebview.h"
it doesn't work also, because it falls for nested includes. What is the most preferrable way to solve this problem? Is just copying the whole folder with headers is the only solution?
Thanks for your help in advance
Last edited by FallenAngel (2017-12-08 20:24:56)
Offline
Moving to Creating and Modifying Packages...
Offline
well.. Thanks
Offline
Hello, I'm here with update. So, I thought, it might be problem with Arch, not the Linux itself. So I checked, by compiling in the Vagrant virtualbox with "ubuntu/trusty64". After installing all dependencies, it compiled successfully. So... How to fix this in Arch? I don't want to change distro just to compile some packages
Offline
Here's some research:
ubuntu@ubuntu-xenial:/vagrant/build$ sudo su
root@ubuntu-xenial:/vagrant/build# find / -name "KGraphicsWebView"
/usr/include/KDE/KGraphicsWebView
^C
root@ubuntu-xenial:/vagrant/build# vim /usr/include/KDE/KGraphicsWebView
root@ubuntu-xenial:/vagrant/build# ls /usr/include/ | grep kg
kgenericfactory.h
kgenericfactory.tcc
kgesture.h
kglobalaccel.h
kglobal.h
kglobalsettings.h
kglobalshortcutinfo.h
kglobalshortcutinfo_p.h
kgraphicswebview.h
kguiitem.h
It means... There is that missing file. And if I look inside of kgraphicswebview.h
#include <kdewebkit_export.h>
-----
Oh, and one more. The kdewebkit_export.h is located within the same folder in Ubuntu.
How can I accomplish this is the Arch? Because the libraries are as in the KDE folder, as in the KF5
Last edited by FallenAngel (2017-12-08 10:17:05)
Offline
Offline
KDEWebkit(4) libraries have been removed from Arch, because they use an old outdated webkit version that is riddled with security bugs. The Arch PKGBUILD builds amarok without the webkit features enabled (this primarily disables the Wikipedia applet). You can't just drop in the KF5 version since Amarok's main branch still depends on KDE4
Offline
Can you build successfully using the amarok PKGBUILD?
Trying now. Seems strange, but from PKGBUILD it takes a lot more time to download the git branch for building
The Arch PKGBUILD builds amarok without the webkit features enabled
I'm trying to build it from source to make some bug fixes, found in bugzilla. Trying to contribute to open source. I think, I do need almost every feature to be enabled, to understand the archirecture of the application. So, even with the AUR I cannot install the libraries for KDE4?
Offline
Why would you need every feature enabled to understand the architecture? You would have to port the wikipedia applet anyway if that is where you intend to make fixes. If your fixes are intended to be in another part it really doesn't matter that the wikipedia applet isn't present. I don't know if there are packages for this in the AUR, maybe digging up an old version via ALRM or similar and trying to build that against the modern stack might work, but I really don't think that this would be worth the hassle. Ideally most adjustments to make should probably be done on the KF5 branch anyway, which is going to be a different ballpark entirely.
Last edited by V1del (2017-12-08 12:54:37)
Offline
Just finished the PKGBUILD. Unfortunately, the same error occurs. It complains about #include "../kgraphicswebview.h"
I've took this one: https://aur.archlinux.org/packages/amarok-git/
Maybe you are right about the "all features". But I do need to implement kind of communication between the facebook and amarok. I think, this could be based on the same technologies. If not.. Then, please, tell me, which flags do I need to pass, because flags noted in the PKGBUILD not working for me, alas
BTW, I don't think, that only this app depends from KGraphicsWebView. Because, in the github https://github.com/KDE/kdewebkit there is some updates. I think, the #include <KGraphicsWebView> still is used in some programs. Or am I wrong in this case?
Offline
The amarok-git package that you are using hasn't been updated in the last year and a half, so it predates the library removal that V1del mentioned. As such it no longer works and should either be fixed or removed from the AUR.
When I asked about using the PKGBUILD, I was referring to the amarok package in the repositories, not amarok-git from the AUR.
Offline
Look at the repo PKGBUILD (and the patches). You are wrong in this case since the kdewebkit you refer to is the KF5/Qt5 library and is available in Arch as https://www.archlinux.org/packages/extr … kdewebkit/
Amarok however - if you build from the master branch - is a Qt4/KDE4 application and will not be able to make use of that library. There recently has been some activity on the KF5 branch for Amarok again, though I am unsure on what is currently working on that and/or how far the porting effort has come. If you intend to add a new feature, it would likely be better to do that on the KF5 branch directly and maybe helping the porting effort, however if you'd rather use a stable base for the learning effect using the Qt4 branch will work as well, but as evident this has a few things you'd need to be aware of.
Offline
Yes, sorry. Found the PKGBUILD for the amarok (Hope, it is what you meant https://git.archlinux.org/svntogit/pack … ges/amarok ). This one builds sucessfully, but it denies some directories by the amarok-no-qtwebkit.patch
I think, you're right. Will try the new builds. And hope, that it won't fail in that case. Well, the thread itself was about the error in the file for Amarok by the distro. That question is quite covered - there is the need to move from KDE4 llibraries to KDE5. That is not the question to the Arch community, I understand. Thanks
But just for before the thread will be closed, can I ask the last thing - is it possible to compile legacy packages, which depend on KDE4? Such as cocoon (https://github.com/KDE/cocoon). Just curious
Offline
But just for before the thread will be closed, can I ask the last thing - is it possible to compile legacy packages, which depend on KDE4? Such as cocoon (https://github.com/KDE/cocoon). Just curious
If you provide the KDE4 dependency yes. There is no package in the arch repositories that does that or in the AUR.
Offline
Okay, thanks
How can I mark this as [SOLVED]?
Offline
Offline
Thanks
Offline