Following Bug #166041 where scim* is now built against libstdc++so7. It was simple for all other scim* packages, however it is more complicated to do so for scim-qtimm because it also links to qt which uses the regular libstdc++. Lower Priority ============== FC5test3 shipped with scim linked against libstdc++so7, but scim-qtimm we were unable to rebuild for this reason. Package scim contains this hack in /etc/X11/xinit/xinput.d/scim: SCIM_QTIMM_XINPUT=/etc/X11/xinit/xinput.d/scim-qtimm [ -r "${SCIM_QTIMM_XINPUT}" ] && . ${SCIM_QTIMM_XINPUT} unset SCIM_QTIMM_XINPUT # override with xim for now QT_IM_MODULE=xim The effect of this is for KDE and qt apps to use the XIM interface to scim, which works fine with or without the currently disfunctional scim-qtimm installed. We can survive using the XIM interface for now until scim-qtimm is fixed. How to Fix It ============= Jakub said that special work must be taken in order to build scim-qt because some parts of it links against libstdc++.so.6 and the scim parts need libstdc++7. Here are some notes where he describes what is necessary. <jakub> warren: probably split the sources, so that there are some source files that are using KDE/Qt headers (and those are compiled with g++) <jakub> warren: then these files comunicate over a C API (well, it can be e.g. some C++ classes, but they must never contain any STL stuff) <jakub> warren: with other C++ files that use the SCIM headers and are compiled with libstdc++so7-g++ <jakub> warren: finally, the link line will be slighly complicated, as you need to link against both libstdc++'s <jakub> warren: guess something like libstdc++so7-g++ ... -shared ... `g++ $CXXFLAGS -print-file-name=libstdc++.so`
*** Bug 181297 has been marked as a duplicate of this bug. ***
Maybe this should be done with a script that takes the upstream source, splits it and builds each side separately, and combines the object files in the desired way. What we don't want is manually hacked sources that would need to be redone from scratch when new versions are released upstream. The goal deliverable here would be a script that splits and builds it in this unique way.
Tried the latest scim-qtimm (scim-qtimm-0.9.4-2.1.1) with kedit, does not work very well. However, with XIM bridge, it is still possible to input. Starting program: /usr/bin/kedit Reading symbols from shared object read from target memory...done. Loaded system supplied DSO at 0x321000 [Thread debugging using libthread_db enabled] [New Thread -1208310096 (LWP 29756)] Detaching after fork from child process 29760. kbuildsycoca running... ScimInputContextPlugin() kedit: symbol lookup error: /usr/lib/qt-3.3/plugins/inputmethods/libqscim.so: undefined symbol: _ZN4scim24scim_get_locale_languageERKSs Program exited with code 0177.
scim-1.4.4-11 has been built without libstdc++so7 so this may no longer be necessary.
Looks good. Tried with scim-qtimm-0.9.4-3 and scim-1.4.4-15 with qt-3.3.6. Works without a glitch. :-)