引言
在虚拟机上安装麒麟系统后,安装了qt5.9.1,只能输入英文和数字不能输入中文注释,编译的程序也不能输入中文。
原因
安装后的麒麟系统自带搜狗输入法,原本可以输入中文,但是qt5.9.1缺少支持搜狗输入法的fcitx插件。所以qt5.9.1中不能输入中文。
解决方法
安装fcitx插件。
 网上的解决qt无法输入中文的方法很多,我之前也试过很多,但都没有成功。故而采用下载fcitx源码编译生成动态库的方法,虽然中间波折很多,但是qt5.9.1可以输入中文了。
 下面和我一起迎接激动的时刻吧。
 首先在麒麟系统的终端输入以下指令查看系统是否含有fcitx-frontend-qt5.
dpkg -L fcitx-frontend-qt5
回车后,认真阅读出现的文本。如果你之前没有安装fcitx-frontend-qt5,系统会提示你还没有安装,如果已经安装了,使用下面的指令查看是否有生成的动态库libfcitxplatforminputcontextplugin.so。
dpkg -L fcitx-frontend-qt5 | grep .so
如果存在,会出现libfcitxplatforminputcontextplugin.so的路径,没有的话那就从下面开始吧。
安装组件
先查看下面的组件是否已经安装
 fcitx-libs-dev
 libgl1-mesa-dev
 libglu1-mesa-dev
 libxkbcommon-dev
 同时查看系统是否已经安装cmake编译器,因为编译源码用的使cmake编译器。
 在终端的命令行输入指令:
dpkg -L fcitx-libs-dev 
回车后可以查看是否安装fcitx-libs-dev组件,同样的方法,查看是否安装上面其它的组件。回车后认真阅读出现的信息。也可以使用并列的方式,一次性查找。指令如下:
dpkg -L fcitx-libs-dev libgl1-mesa-dev libglu1-mesa-dev libxkbcommon-dev
然后回车,阅读出现的信息,就可以知道组件安装与否。
 下面查看cmake的版本,在命令行输入指令:
cmake --version
回车后,若是安装了cmake可以看到其版本号。若没有安装,输入指令:
sudo apt-get install cmake
上面的准备工作做完之后,下面开始下载源码,下载地址:xxxxxxxxx。
 下载之后解压文件到qt安装目录的同级目录下,假如你的qt安装目录在/home下,那么解压后的文件的路径和Qt安装目录在同级目录下。
 
 接下来在终端进入到fcitx-qt5的目录下,执行指令:
cmake .
make
sudo make install
若编译的过程中出现问题如下:
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!
那么需要下载组件,extra-cmake-modules_1.4.0.orig.tar.xz,下载地址:xxxxxxxx。下载后解压到fcitx-qt5目录下,fcitx-qt5目录下会出现如下的目录。
nigulasi@nigulasi-virtual-machine:~/fcitx-qt5$ ls
clang-format.sh  CMakeFiles      COPYING.BSD                guiwrapper            quickphrase-editor
cmake            CMakeLists.txt  dbusaddons                 platforminputcontext  README
CMakeCache.txt   COPYING         extra-cmake-modules-1.4.0  po                    widgetsaddons
进入extra-cmake-modules-1.4.0 目录,在命令行输入指令:
cd extra-cmake-modules-1.4.0 
进入extra-cmake-modules-1.4.0 目录后,编译这个组件,执行如下命令:
cmake .
make 
sudo make install
编译后回到上一级目录,即fcitx-qt5的文件夹内,输入指令:
cd ..
返回到上级目录后,重新编译fcitx-qt5插件库,在命令行输入指令:
cmake .
make
sudo make install
如果你看到下面的内容,那么恭喜你,已经生成插件的动态库了。
[  0%] Built target fcitx-scan-addons.target
[  0%] Built target f












![简单的跳马问题,遍历dp[j][i]到某个值那个数据不对了,如何解决??](https://img-blog.csdnimg.cn/img_convert/c2b7fcf358c900780204ab56182153de.gif)





