这个问题可以分为**能看到文字候选框**和**看不到文字候选框**两种情况。
1. 能看到文字候选框:
- plugins问题
- 检查qt的库目录,参考我的目录为`/usr/local/Trolltech/Qt-4.8.7/`,该目录下的`plugins`中,是否存在libfcitxplatforminputcontextplugin.so
- 若不存在则安装`fcitx-libs`,并用find搜索该库,将其放入到`plugins/platforminputcontexts/`下即可
- 不要忘记设置qt程序的plugin路径,例如
```
export QT_PLUGIN_PATH=/usr/local/Trolltech/plugins:$QT_PLUGIN_PATH
```
- 编码格式问题
- 根据搜索资料,麒麟系统运行在gb18030编码下,我要运行的程序是GBK编码,有几台机器出现当编码为utf-8时可以输入但保存会乱码,当编码为gbk时无法输入的问题。
- 解决方案:通过命令添加zh_CN.gb18030编码,并将运行环境改成gb18030
```
dpkg-reconfigure locales
```
2. 看不到文字候选框
- 该情况需要检查右下角输入法是否存在,目前测试发现当进程中存在`fcitx -d`但右下角没有键盘图标时会出现该种情况,解决方案见问题一。
---
三、QT程序出现中文乱码
前提:首先排除程序自身问题,即在其他平台下可以正常显示中文。
- 首先检查QT的库目录,是否存在`fonts`文件夹,若不存在则需要重新编译qt,在configure阶段加上`-fontconfig`
- 检查QT目录是否存在`plugins`文件夹,若不存在则从qt的编译目录下拷贝过来,同时设置QT_PLUGIN_PATH
- 还有一种可能情况,当locale选择为zh_CN.GBK时程序无法输入中文,只有切换为zh_CN.UTF-8时才能正常输入。但该情况仅在一台机器上出现过,怀疑仍旧是过程现象而不是根源问题,但切换为zh_CN.utf-8后一切正常未出现预期外问题,所以也可以一试。
---