1 本机环境:
- deepin 15.11
- Qt 5.11.3
- fcitx 输入法
2 问题描述
Qt Creator 和使用 QT 编译的程序运行时均不能使用deepin系统自带的fcitx输入法,且采用传统方法(将 /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so 复制到相应路径)无法解决。
3 解决方案
- 安装相应的依赖库:
sudo apt-get install cmake fcitx-libs-dev libgl1-mesa-dev libglu1-mesa-dev libxkbcommon-dev
- 设置 Qt 环境变量:
echo "export PATH=${HOME}/Qt5.10.0/5.10.0/gcc_64/bin:${PATH}" >> ~/.bashrc && source ~/.bashrc
注意,将上述命令中的紫色字体部分替换为自己实际的 Qt 安装的相应路径(${HOME} 表示用户文件夹)。
- 下载 fcitx-qt5 源码:下载地址
- 解压并编译安装:
cd file_path(为fcitx-qt5 解压后的文件夹路径)
cmake . (报错 Could not find a package configuration file provided by "ECM" 则执行 sudo apt install extra-cmake-modules ,然后再次执行 cmake .)
make
sudo make install 将 fcitx-qt5/platforminputcontext/ 目录下的 libfcitxplatforminputcontextplugin.so 文件复制到Qt安装目录下的 platforminputcontexts 子目录中(安装时如果不改变路径,一般为:/home/用户文件夹/Qt5.11.3/5.11.3/gcc_64/plugins/platforminputcontexts),重新使用Qt编译的程序就能正常使用 fcitx 输入法;
将 libfcitxplatforminputcontextplugin.so 文件复制QtCreator 安装目录下的 platforminputcontexts 子目录中(安装时如果不改变路径,一般为:/home/用户文件夹/Qt5.11.3/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts),重启QtCreator 就可以正常使用 fcitx 输入法,具体命令如下:
cd /home/用户文件夹/Qt5.11.3/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/
sudo cp /(自己的实际路径)/fcitx-qt5/platforminputcontext/libfcitxplatforminputcontextplugin.so .
sudo chmod libfcitxplatforminputcontextplugin.so cd /home/用户文件夹/Qt5.11.3/5.11.3/gcc_64/plugins/platforminputcontexts
sudo cp /(自己的实际路径)/fcitx-qt5/platforminputcontext/libfcitxplatforminputcontextplugin.so .
sudo chmod libfcitxplatforminputcontextplugin.so注意,紫色部分均为可能需要更改的地方。
转载于:https://blog.csdn.net/davidhopper/article/details/78299196