红联Linux门户
Linux帮助

解决Qt5 Creator无法切换输入法(fcitx),Ubuntu中不能使用搜狗

发布时间:2016-01-03 09:58:48来源:linux网站作者:lieefu

如何在Qt5中切换汉字输入法,完美解决Qt Creator使用fcitx输入法录入汉字问题,解决办法是自己编译fcitx-qt5,安装部署 libfcitxplatforminputcontextplugin.so

在Qt5.3之前,我发布过解决办法 解决Qt5 Creator无法切换输入法(fcitx),不能录入汉字问题,Qt5.4以及Qt5.5,旧办法失效,原因是Qt5.4后对之前Qt5版本不再二进制兼容,libfcitxplatforminputcontextplugin.so 需要编译最新的fcitx-qt5。如果你懒得自己编译,可以下载我编译的 libfcitxplatforminputcontextplugin.so(http://pan.baidu.com/s/1gdsE3ZH)

看fcitx-qt5项目的更新日志,是在1.0.3版本时解决的这个问题,写本篇文章时,我git clone到的是1.0.4版本。


编译fcitx-qt需要cmake,安装cmake命令,如果已经安装,请略过。

sudo apt-get install cmake

安装 fcitx-libs-dev 
sudo apt-get install fcitx-libs-dev

设置qmake的环境变量: 
export PATH="/home/lieefu/Qt5.5.0/5.5/gcc_64/bin":$PATH

下载fcitx-libs源码: 
git clone git@github.com:fcitx/fcitx-qt5.git

编译方法: 
cd fcitx-qt5
cmake .
make
sudo make install

最后把编译得到 libfcitxplatforminputcontextplugin.so 拷贝到 Qt5.5安装目录的 Tools/QtCreator/bin/plugins/platforminputcontexts

Qt5.6的目录是 Tools/QtCreator/lib/Qt/plugins/platforminputcontexts

大功告成!


CMake Error at CMakeLists.txt:8 (find_package):
Could not find a package configuration file provided by "ECM" (requested
version 1.4.0) with any of the following names:
ECMConfig.cmake
ecm-config.cmake
Add the installation prefix of "ECM" to CMAKE_PREFIX_PATH or set "ECM_DIR"
to a directory containing one of the above files.  If "ECM" provides a
separate development package or SDK, be sure it has been installed.
-- Configuring incomplete, errors occurred!


遇到上述错误处里方法:

这个页面 https://launchpad.net/ubuntu/+source/extra-cmake-modules/1.4.0-0ubuntu1 下载 extra-cmake-modules_1.4.0.orig.tar.xz

解压后: 
cd extra-cmake-modules-1.4.0
cmake .
make
sudo make install


CMake Error at /home/lieefu/Qt5.5.0/5.5/gcc_64/lib/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:9 (message):

Failed to find "GL/gl.h" in "/usr/include/libdrm".

处里方法: 
sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev

-- Found PkgConfig: /usr/bin/pkg-config (found version "0.26")

-- Could NOT find XKBCommon_XKBCommon (missing:  XKBCommon_XKBCommon_LIBRARY XKBCommon_XKBCommon_INCLUDE_DIR)

CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):

Could NOT find XKBCommon (missing: XKBCommon_LIBRARIES XKBCommon) (Required

is at least version "0.5.0")

处理方法: 
wget http://xkbcommon.org/download/libxkbcommon-0.5.0.tar.xz
tar xf libxkbcommon-0.5.0.tar.xz
./configure —prefix=/usr —libdir=/usr/lib/x86_64-linux-gnu —disable-x11
make
sudo make install

编译libxkbcommon用到yacc,如果没有这个命令,会遇到下面的错误,yacc在 bison软件包

sudo apt-get install bison

YACC     src/xkbcomp/parser.c
./build-aux/ylwrap: line 176: yacc: command not found
make: *** [src/xkbcomp/parser.c] Error 127


ubuntu英文locale下配置安装中文输入法(fcitx):http://www.linuxdiyf.com/linux/14317.html

Fedora20/22安装fcitx输入法:http://www.linuxdiyf.com/linux/13034.html

Fedora 22上安装fcitx五笔输入法:http://www.linuxdiyf.com/linux/12988.html

fedora22安装fcitx:http://www.linuxdiyf.com/linux/12793.html

ubuntu15.04解决wps不能调用fcitx的搜狗拼音问题:http://www.linuxdiyf.com/linux/11968.html