https://bugs.kde.org/show_bug.cgi?id=498058
Bug ID: 498058
Summary: Compiling issue for v3.2.0 Qt6
Classification: Applications
Product: amarok
Version: 3.2.0
Platform: Arch Linux
OS: Linux
Status: REPORTED
Severity: normal
Priority: NOR
Component: general
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: kf5
SUMMARY
Hi, I'm the maintainer of Amarok on AUR and I have made a separate pkgbuild
also with clang to build the Qt6 version just to test it
* https://aur.archlinux.org/packages/amarok
*
https://github.com/FabioLolix/PKGBUILD-AUR_fix/blob/master/a/amarok-qt6/PKGBUILD
*
https://github.com/FabioLolix/PKGBUILD-AUR_fix/blob/master/a/amarok-qt6_clang/PKGBUILD
STEPS TO REPRODUCE
On Arch Linux
sudo pacman -Syyu git base-devel
git clone https://github.com/FabioLolix/PKGBUILD-AUR_fix
cd PKGBUILD-AUR_fix/a/amarok-qt6
makepkg -s
OBSERVED RESULT
Fails to compile
EXPECTED RESULT
Compile successfully
SOFTWARE/OS VERSIONS
Linux: linux-lts 6.6.68
KDE Plasma Version: 6.2.4
KDE Frameworks Version: 6.9.0
Qt Version: 6.8.1
ADDITIONAL INFORMATION
Building with GCC 14.2.1
```
57%] Linking CXX shared library ../bin/libamaroklib.so
/usr/bin/ld: CMakeFiles/amaroklib.dir/browsers/filebrowser/FileView.cpp.o:
warning: relocation against `_ZN12PopupDropper5clearEv' in read-only section
`.text'
/usr/bin/ld: CMakeFiles/amaroklib.dir/browsers/CollectionTreeView.cpp.o: in
function `CollectionTreeView::mouseReleaseEvent(QMouseEvent*)':
CollectionTreeView.cpp:(.text+0xba48): undefined reference to
`PopupDropper::fadeHideFinished()'
/usr/bin/ld: CMakeFiles/amaroklib.dir/browsers/CollectionTreeView.cpp.o:
relocation R_X86_64_PC32 against undefined protected symbol
`_ZN12PopupDropper16fadeHideFinishedEv' can not be used when making a shared
object
/usr/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
make[2]: *** [src/CMakeFiles/amaroklib.dir/build.make:7527:
bin/libamaroklib.so.1.0.0] Error 1
make[1]: *** [CMakeFiles/Makefile2:12657: src/CMakeFiles/amaroklib.dir/all]
Error 2
make: *** [Makefile:146: all] Error 2
==> ERROR: A failure occurred in build().
```
Building with clang+lld v18.1.8
```
[ 57%] Linking CXX shared library ../bin/libamaroklib.so
ld.lld: error: undefined protected symbol: PopupDropper::PopupDropper(QWidget*,
bool)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::createPopupDropper(QWidget*,
>>> bool))
>>> did you mean: PopupDropper::PopupDropper(QWidget*, bool)
>>> defined in: ../bin/libamarokpud.so
ld.lld: error: undefined protected symbol:
PopupDropper::setSvgRenderer(QSvgRenderer*)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::createPopupDropper(QWidget*,
>>> bool))
>>> referenced by PrettyListView.cpp
>>>
>>> CMakeFiles/amaroklib.dir/playlist/view/listview/PrettyListView.cpp.o:(Playlist::PrettyListView::startDrag(QFlags<Qt::DropAction>))
ld.lld: error: undefined protected symbol:
PopupDropper::setQuitOnDragLeave(bool)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::createPopupDropper(QWidget*,
>>> bool))
ld.lld: error: undefined protected symbol: PopupDropper::setFadeInTime(int)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::createPopupDropper(QWidget*,
>>> bool))
ld.lld: error: undefined protected symbol: PopupDropper::setFadeOutTime(int)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::createPopupDropper(QWidget*,
>>> bool))
ld.lld: error: undefined protected symbol: PopupDropper::setColors(QColor
const&, QColor const&, QColor const&, QColor const&, QColor const&)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::createPopupDropper(QWidget*,
>>> bool))
ld.lld: error: undefined protected symbol:
PopupDropperItem::PopupDropperItem(QGraphicsItem*)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::createItem(QAction*))
ld.lld: error: undefined protected symbol:
PopupDropperItem::setAction(QAction*)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::createItem(QAction*))
ld.lld: error: undefined protected symbol: PopupDropperItem::text() const
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::createItem(QAction*))
ld.lld: error: undefined protected symbol: PopupDropperItem::setText(QString
const&)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::createItem(QAction*))
ld.lld: error: undefined protected symbol: PopupDropperItem::setFont(QFont
const&)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::adjustItem(PopupDropperItem*))
ld.lld: error: undefined protected symbol: PopupDropperItem::setHoverMsecs(int)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::adjustItem(PopupDropperItem*))
ld.lld: error: undefined protected symbol:
PopupDropperItem::hoverIndicatorFillBrush() const
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::adjustItem(PopupDropperItem*))
ld.lld: error: undefined protected symbol:
PopupDropperItem::setHoverIndicatorFillBrush(QBrush const&)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::adjustItem(PopupDropperItem*))
ld.lld: error: undefined protected symbol: PopupDropperItem::isSubmenuTrigger()
const
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::adjustItem(PopupDropperItem*))
ld.lld: error: undefined protected symbol:
PopupDropperItem::setHoverIndicatorShowStyle(PopupDropperItem::HoverIndicatorShowStyle)
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::adjustItem(PopupDropperItem*))
ld.lld: error: undefined protected symbol: PopupDropper::forEachItem(void
(*)(void*))
>>> referenced by PopupDropperFactory.cpp
>>>
>>> CMakeFiles/amaroklib.dir/PopupDropperFactory.cpp.o:(PopupDropperFactory::adjustItems(PopupDropper*))
ld.lld: error: undefined protected symbol: PopupDropper::isHidden() const
>>> referenced by FileView.cpp
>>>
>>> CMakeFiles/amaroklib.dir/browsers/filebrowser/FileView.cpp.o:(FileView::startDrag(QFlags<Qt::DropAction>))
>>> referenced by PlaylistBrowserView.cpp
>>>
>>> CMakeFiles/amaroklib.dir/browsers/playlistbrowser/PlaylistBrowserView.cpp.o:(PlaylistBrowserNS::PlaylistBrowserView::startDrag(QFlags<Qt::DropAction>))
>>> referenced by PrettyListView.cpp
>>>
>>> CMakeFiles/amaroklib.dir/playlist/view/listview/PrettyListView.cpp.o:(Playlist::PrettyListView::startDrag(QFlags<Qt::DropAction>))
>>> referenced 1 more times
ld.lld: error: undefined protected symbol:
PopupDropper::addItem(PopupDropperItem*, bool)
>>> referenced by FileView.cpp
>>>
>>> CMakeFiles/amaroklib.dir/browsers/filebrowser/FileView.cpp.o:(FileView::startDrag(QFlags<Qt::DropAction>))
>>> referenced by PlaylistBrowserView.cpp
>>>
>>> CMakeFiles/amaroklib.dir/browsers/playlistbrowser/PlaylistBrowserView.cpp.o:(PlaylistBrowserNS::PlaylistBrowserView::startDrag(QFlags<Qt::DropAction>))
>>> referenced by PrettyListView.cpp
>>>
>>> CMakeFiles/amaroklib.dir/playlist/view/listview/PrettyListView.cpp.o:(Playlist::PrettyListView::startDrag(QFlags<Qt::DropAction>))
>>> referenced 3 more times
ld.lld: error: undefined protected symbol: PopupDropper::show()
>>> referenced by FileView.cpp
>>>
>>> CMakeFiles/amaroklib.dir/browsers/filebrowser/FileView.cpp.o:(FileView::startDrag(QFlags<Qt::DropAction>))
>>> referenced by PlaylistBrowserView.cpp
>>>
>>> CMakeFiles/amaroklib.dir/browsers/playlistbrowser/PlaylistBrowserView.cpp.o:(PlaylistBrowserNS::PlaylistBrowserView::startDrag(QFlags<Qt::DropAction>))
>>> referenced by PrettyListView.cpp
>>>
>>> CMakeFiles/amaroklib.dir/playlist/view/listview/PrettyListView.cpp.o:(Playlist::PrettyListView::startDrag(QFlags<Qt::DropAction>))
>>> referenced 1 more times
ld.lld: error: too many errors emitted, stopping now (use --error-limit=0 to
see all errors)
clang++: error: linker command failed with exit code 1 (use -v to see
invocation)
make[2]: *** [src/CMakeFiles/amaroklib.dir/build.make:7527:
bin/libamaroklib.so.1.0.0] Error 1
make[1]: *** [CMakeFiles/Makefile2:12657: src/CMakeFiles/amaroklib.dir/all]
Error 2
make: *** [Makefile:146: all] Error 2
==> ERROR: A failure occurred in build().
```
--
You are receiving this mail because:
You are watching all bug changes.