View previous topic :: View next topic |
Author |
Message |
Shadow_Fury Apprentice
Joined: 20 Apr 2021 Posts: 196 Location: 11.435765792823453, 143.05926743686274
|
Posted: Fri Nov 01, 2024 12:34 pm Post subject: kde-plasma/oxygen fails to build with GCC [RESOLVED] |
|
|
I'm on a fresh clang/LLVM system, and am having issues with KDE. when compiled with LLVM, kwin_x11 will crash repeatedly and then ask to select a different option. i already tried compiling libcxx with "MYCMAKEARGS="-DLIBCXX_TYPEINFO_COMPARISON_IMPLEMENTATION=2". as a QA notice said it might help, but it didn't. I read in a different post that re-compiling dev-qt/*, and kde-*/* with GCC would help, so i'm trying that. I already did dev-qt/* with this:
Code: |
emerge --oneshot $(qlist -I | grep 'dev-qt/*' | xargs)
|
but when trying the same with
Code: |
emerge --oneshot $(qlist -I | grep 'kde-*/*' | xargs)
|
some things fail to build. (all packages build with clang)
oxygen is the first i can't figure out.
emerge --info '=kde-plasma/oxygen-6.2.2::gentoo'
emerge -pqv '=kde-plasma/oxygen-6.2.2::gentoo':
Code: |
[ebuild R ] kde-plasma/oxygen-6.2.2 USE="X qt5 -debug"
|
build.log
this is what jumps out to me:
Code: |
FAILED: bin/oxygen-demo5: && /usr/bin/g++ -O2 -march=native -fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -fdiagnostics-color=always -Wl,--enable-new-dtags -Wl,--as-needed kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygen-demo5_autogen/mocs_compilation.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygenbenchmarkwidget.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygenbuttondemowidget.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygendemodialog.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygendemowidget.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygenframedemowidget.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygeninputdemowidget.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygenlistdemowidget.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygenmdidemowidget.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygensimulator.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygensliderdemowidget.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygentabdemowidget.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygentabwidget.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/main.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygenschemechooser.cpp.o kstyle5/demo/CMakeFiles/oxygen-demo5.dir/oxygenstylechooser.cpp.o -o bin/oxygen-demo5 /usr/lib64/libKF5Completion.so.5.116.0 /usr/lib64/libKF5ConfigWidgets.so.5.116.0 /usr/lib64/libKF5ConfigGui.so.5.116.0 /usr/lib64/libQt5Xml.so.5.15.14 /usr/lib64/libKF5ConfigCore.so.5.116.0 /usr/lib64/libKF5WidgetsAddons.so.5.116.0 /usr/lib64/libKF5I18n.so.5.116.0 /usr/lib64/libKF5Codecs.so.5.116.0 /usr/lib64/libKF5Auth.so.5.116.0 /usr/lib64/libQt5Widgets.so.5.15.14 /usr/lib64/libKF5AuthCore.so.5.116.0 /usr/lib64/libKF5CoreAddons.so.5.116.0 /usr/lib64/libQt5Gui.so.5.15.14 /usr/lib64/libQt5Core.so.5.15.14 && :
/usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libKF5CoreAddons.so.5.116.0: undefined reference to `typeinfo for std::__1::bad_function_call@Qt_5'
/usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libKF5CoreAddons.so.5.116.0: undefined reference to `vtable for std::__1::bad_function_call@Qt_5'
collect2: error: ld returned 1 exit status
|
i've had similar errors which i dealt with by re-compiling a relevant library with gcc. i have no idea, though, what to do about ": undefined reference to `typeinfo for std::__1::bad_function_call@Qt_5'"
help is appreciated
-S
Last edited by Shadow_Fury on Fri Nov 01, 2024 8:32 pm; edited 1 time in total |
|
Back to top |
|
|
asturm Developer
Joined: 05 Apr 2007 Posts: 9303
|
Posted: Fri Nov 01, 2024 12:39 pm Post subject: Re: kde-plasma/oxygen fails to build with GCC |
|
|
Shadow_Fury wrote: | but when trying the same with
Code: |
emerge --oneshot $(qlist -I | grep 'kde-*/*' | xargs)
|
|
You're giving Portage a mix of applications and libraries with that command, and since they are already installed, there will be no automatic ordering of rebuilding libraries before applications.
You probably want to split that up in kde-frameworks/* first, then kde-plasma/* and or kde-apps/* and kde-misc/*. Note that this does not catch other KDE packages outside those categories. |
|
Back to top |
|
|
Shadow_Fury Apprentice
Joined: 20 Apr 2021 Posts: 196 Location: 11.435765792823453, 143.05926743686274
|
Posted: Fri Nov 01, 2024 2:10 pm Post subject: Re: kde-plasma/oxygen fails to build with GCC |
|
|
asturm wrote: | Shadow_Fury wrote: | but when trying the same with
Code: |
emerge --oneshot $(qlist -I | grep 'kde-*/*' | xargs)
|
|
You're giving Portage a mix of applications and libraries with that command, and since they are already installed, there will be no automatic ordering of rebuilding libraries before applications.
You probably want to split that up in kde-frameworks/* first, then kde-plasma/* and or kde-apps/* and kde-misc/*. Note that this does not catch other KDE packages outside those categories. |
tried this. kde-frameworks/* updated correctly, but kde-plasma/* still fails at oxygen, with the same error as described above |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1932
|
Posted: Fri Nov 01, 2024 2:32 pm Post subject: |
|
|
Try emerge --oneshot /usr/lib64/libKF5CoreAddons.so.5.116.0 to attempt to fix the broken binary. Portage will look up what owns that path and rebuild that package.
Last edited by grknight on Fri Nov 01, 2024 2:46 pm; edited 1 time in total |
|
Back to top |
|
|
asturm Developer
Joined: 05 Apr 2007 Posts: 9303
|
Posted: Fri Nov 01, 2024 2:40 pm Post subject: |
|
|
Yup. The problem is that qlist -I does not contain SLOT information. Which means emerge will pick the latest available SLOT as a result, even if not needed, and omit older slots (like kcoreaddons:5 in your case). |
|
Back to top |
|
|
Shadow_Fury Apprentice
Joined: 20 Apr 2021 Posts: 196 Location: 11.435765792823453, 143.05926743686274
|
Posted: Fri Nov 01, 2024 3:12 pm Post subject: |
|
|
grknight wrote: | Try emerge --oneshot /usr/lib64/libKF5CoreAddons.so.5.116.0 to attempt to fix the broken binary. Portage will look up what owns that path and rebuild that package. |
this fixed it. thanks. is there a way to rebuild all packages in a category, including slots? |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1932
|
Posted: Fri Nov 01, 2024 4:06 pm Post subject: |
|
|
Shadow_Fury wrote: | this fixed it. thanks. is there a way to rebuild all packages in a category, including slots? |
For installed packages: emerge --oneshot $(qlist -IS category/) |
|
Back to top |
|
|
Shadow_Fury Apprentice
Joined: 20 Apr 2021 Posts: 196 Location: 11.435765792823453, 143.05926743686274
|
Posted: Fri Nov 01, 2024 8:32 pm Post subject: |
|
|
grknight wrote: | Shadow_Fury wrote: | this fixed it. thanks. is there a way to rebuild all packages in a category, including slots? |
For installed packages: emerge --oneshot $(qlist -IS category/) |
thank you. will mark this as resolved |
|
Back to top |
|
|
|