解決Qt5 Creator沒法切換輸入法(fcitx),Ubuntu中不能使用搜狗輸入法錄入漢字問題

本文檔2019年1月23日修正,Ubuntu18.10,Qt5.12.0測試經過html

本文檔2017年6月1日修正,Ubuntu16.04,Qt5.9.0測試經過linux

2016年6月8日修正,ubuntu 16.04 Qt5.7.0 以及 Qt5.6.1均測試經過git

在Qt5.3以前,我發佈過解決辦法 解決Qt5 Creator沒法切換輸入法(fcitx),不能錄入漢字問題,Qt5.4以及Qt5.5,舊辦法失效,緣由是Qt5.4後對以前Qt5版本再也不二進制兼容,libfcitxplatforminputcontextplugin.so 須要編譯最新的fcitx-qt5。若是你懶得本身編譯,能夠下載我編譯的 libfcitxplatforminputcontextplugin.sogithub

看fcitx-qt5項目的更新日誌,是在1.0.3版本時解決的這個問題,寫本篇博客時,我git clone到的是1.0.4版本。ubuntu

編譯fcitx-qt須要cmake,安裝cmake命令,若是已經安裝,請略過。ide

sudo apt-get install cmake
  • 安裝 fcitx-libs-dev測試

sudo apt-get install fcitx-libs-dev
  • 設置qmake的環境變量:ui

export PATH="/home/lieefu/Qt5.12.0/5.12.0/gcc_64/bin":$PATH
  • 下載fcitx-libs源碼:spa

git clone git@github.com:fcitx/fcitx-qt5.git
  • 編譯方法:.net

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

 https://launchpad.net/ubuntu/+source/extra-cmake-modules/5.18.0-0ubuntu1  extra-cmake-modules_5.18.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")

處裏方法:

Ubuntu 16.04中能夠執行 sudo apt install libxkbcommon-dev 安裝

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

相關文章
相關標籤/搜索