-
Hi, I am not able to build fcitx5-qt on my system; it keeps failing with all kinds of undefined references. Builds system is Debian 12 with Qt 6.4.2 and Qt5. All known qt6 and qt5 dev packages have been installed. I have built all of fcitx5's dependencies and fcitx5, as well as building fcitx5-qt with clang 15, llvmlibc and libc++, but fcitx5-qt is giving lots of problems. Even trying to build fcitx5-qt with gcc, glibc and libstdc++ also returns similar errors. fcitx5 and its dependencies are compiled and installed in $HOME/Runtime/Applications/FCITX5 Build failures:
Help is greatly appreciated. Thank you. |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 1 reply
-
This is my CMAKE config command and output, for reference: CMAKE config command: Config passes:
|
Beta Was this translation helpful? Give feedback.
-
I pulled a docker debian 12 and it build perfectly fine in the docker. It's definitely your issue, not fcitx's. So first of all, you're using debian system Qt (based on the path /usr/lib/x86_64-linux-gnu/libQt6Core.so) Which means, this Qt must be built against system's libstdc++. You SHOULD NOT mix libc++ and libstdc++ in the same binary. libc++ symbol and libstdc++ are not ABI compatible. If you want to use libc++, build your own Qt. As for the issue you mentioned with gcc, you're likely has a dirty cmake directory. Just remove the build/ directory and rerun. I tried both clang(from debian) and gcc(from debian) and there's no problem building it. |
Beta Was this translation helpful? Give feedback.
I pulled a docker debian 12 and it build perfectly fine in the docker.
It's definitely your issue, not fcitx's.
So first of all, you're using debian system Qt (based on the path /usr/lib/x86_64-linux-gnu/libQt6Core.so)
Which means, this Qt must be built against system's libstdc++. You SHOULD NOT mix libc++ and libstdc++ in the same binary. libc++ symbol and libstdc++ are not ABI compatible.
If you want to use libc++, build your own Qt.
As for the issue you mentioned with gcc, you're likely has a dirty cmake directory. Just remove the build/ directory and rerun.
I tried both clang(from debian) and gcc(from debian) and there's no problem building it.