• 13722阅读
  • 9回复

[转载]解决Qt5 Creator无法切换输入法(fcitx),Ubuntu中不能使用搜狗输入法录入汉字问题 [复制链接]

上一主题 下一主题
离线XChinux
 

只看楼主 倒序阅读 楼主  发表于: 2015-09-13
— 本帖被 XChinux 执行加亮操作(2015-09-13) —
转载自:http://my.oschina.net/lieefu/blog/505363

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

在Qt5.3之前,我发布过解决办法 解决Qt5 Creator无法切换输入法(fcitx),不能录入汉字问题,Qt5.4以及Qt5.5,旧办法失效,原因是Qt5.4后对之前Qt5版本不再二进制兼容,libfcitxplatforminputcontextplugin.so 需要编译最新的fcitx-qt5,看fcitx-qt5是在1.0.3版本时解决的这个问题,写本篇博客时,我git clone到的是1.0.4版本。

编译fcitx-qt需要cmake,安装cmake命令,如果已经安装,请略过。
  1. sudo apt-get install cmake

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

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

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

    编译方法:
  1. cd fcitx-qt5
  2. cmake .
  3. make
  4. sudo make install

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

大功告成!
  1.     CMake Error at CMakeLists.txt:8 (find_package):
  2.       Could not find a package configuration file provided by "ECM" (requested
  3.       version 1.4.0) with any of the following names:
  4.         ECMConfig.cmake
  5.         ecm-config.cmake
  6.       Add the installation prefix of "ECM" to CMAKE_PREFIX_PATH or set "ECM_DIR"
  7.       to a directory containing one of the above files.  If "ECM" provides a
  8.       separate development package or SDK, be sure it has been installed.
  9.     -- 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
解压后:
  1. cd extra-cmake-modules-1.4.0
  2. cmake .
  3. make
  4. sudo make install

  1.     CMake Error at /home/lieefu/Qt5.5.0/5.5/gcc_64/lib/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:9 (message):
  2.       Failed to find "GL/gl.h" in "/usr/include/libdrm".

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

  1.     -- Found PkgConfig: /usr/bin/pkg-config (found version "0.26")
  2.     -- Could NOT find XKBCommon_XKBCommon (missing:  XKBCommon_XKBCommon_LIBRARY XKBCommon_XKBCommon_INCLUDE_DIR)
  3.     CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
  4.       Could NOT find XKBCommon (missing: XKBCommon_LIBRARIES XKBCommon) (Required
  5.       is at least version "0.5.0")

处里方法:
  1. wget http://xkbcommon.org/download/libxkbcommon-0.5.0.tar.xz
  2. tar xf libxkbcommon-0.5.0.tar.xz
  3. ./configure --prefix=/usr --disable-x11
  4. make
  5. sudo make install

编译libxkbcommon用到yacc,如果没有这个命令,会遇到下面的错误,yacc在 bison软件包中
  1. sudo apt-get install bison

  1.      YACC     src/xkbcomp/parser.c
  2.     ./build-aux/ylwrap: line 176: yacc: command not found
  3.     make: *** [src/xkbcomp/parser.c] Error 127
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线nigoole

只看该作者 1楼 发表于: 2015-09-13
   膜拜下!
有句话说得好:好好学习,天天向上。加油~~!有上船的朋友联系企鹅393320854
离线tangjackaa

只看该作者 2楼 发表于: 2015-09-14
您好,我在Ubuntu系统终端上运行git clone git@github.com:fcitx/fcitx-qt5.git时报错:
正克隆到 'fcitx-qt5'...
Warning: Permanently added the RSA host key for IP address '192.30.252.130' to the list of known hosts.
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
离线rootuser

只看该作者 3楼 发表于: 2016-02-18
请问下,我qt5.2.1下普通用户下能输入中文,但是root用户下不能使用输入中文?怎么解决
离线gui_yiqian

只看该作者 4楼 发表于: 2016-04-09
          
离线lizzzaaa

只看该作者 5楼 发表于: 2016-04-19
回 rootuser 的帖子
rootuser:请问下,我qt5.2.1下普通用户下能输入中文,但是root用户下不能使用输入中文?怎么解决 (2016-02-18 15:57) 

你是怎么解决的呢,我也遇到
离线smaller

只看该作者 6楼 发表于: 2016-05-26
不错 ubuntu 14.04 32位 Qt5.5.1测试可用
离线smaller

只看该作者 7楼 发表于: 2016-05-26
回 tangjackaa 的帖子
tangjackaa:您好,我在Ubuntu系统终端上运行git clone git@github.com:fcitx/fcitx-qt5.git时报错:
正克隆到 'fcitx-qt5'...
Warning: Permanently added the RSA host key for IP address '192.30.252.130' to the list of known hosts.
Permission denied  .. (2015-09-14 22:57) 

https://github.com/fcitx/fcitx-qt5  用这个地址就行了
离线gfanny

只看该作者 8楼 发表于: 2017-02-24
上面几个错误解决了,再去cmake的时候还是有问题:
-- Configuring done
CMake Error at cmake/FindLibIntl.cmake:35 (add_library):
  Cannot find source file:
    INTERFACE
  Tried extensions .c .C .c++ .cc .cpp .cxx .m .M .mm .h .hh .h++ .hm .hpp
  .hxx .in .txx
Call Stack (most recent call first):
  CMakeLists.txt:33 (find_package)

CMake Error in CMakeLists.txt:
  Cannot find source file:
    IMPORTED
  Tried extensions .c .C .c++ .cc .cpp .cxx .m .M .mm .h .hh .h++ .hm .hpp
  .hxx .in .txx
离线chain78

只看该作者 9楼 发表于: 2021-06-18
回 lizzzaaa 的帖子
lizzzaaa:你是怎么解决的呢,我也遇到 (2016-04-19 08:35) 

请问各位这个问题是怎么解决的呀?普通用户下可以QT输入框可以输入中文,sudo执行的程序就不能输入中文
向嵌入式进军!
快速回复
限100 字节
 
上一个 下一个