Qt 程序包括Qt Creator 无法使用fcitx 输入法的解决办法

Linux 下 Qt 程序包括 Qt Creator 无法使用fcitx5 切换输入法的解决办法

前言

下载别人编译好的插件是大概率没有用的,下载源码在自己的设备上编译才是最直接有效的方法.

下载fcitx5-qt

fcitx5-qt
下载后解压

下载依赖

可能会缺东西,自己看着补吧
sudo apt install build-essential cmake extra-cmake-modules libxkbcommon-dev fcitx5-dev libxcb-xfixes0-dev libxcb-randr0-dev libglib2.0-dev -y

Qt版本必须是与编译 Qt Creator 的版本一致,最好GCC也一致

卸载Ibus\fcitx

这一步很重要,卸载ibus是避免和fcitx5冲突
卸载fcitx4是因为残留的配置文件会导致编译的 libfcitx5platforminputcontextplugin.so 不能被 Qt Creator 加载,症状表现为,可以被识别,不会报错,可是死活不加载。
当然,如果libfcitx5platforminputcontextplugin.so 不能加载,qt会直接使用 libibusplatforminputcontextplugin.so进行输入切换(系统存在Ibus的环境下)。

全量 purge ibus 所有组件
sudo apt purge ibus* libibus* ibus-gtk* ibus-qt* -y

全量 purge fcitx4 所有包
sudo apt purge fcitx fcitx-* -y

清理fcitx4 残留
sudo apt purge fcitx fcitx-bin fcitx-libs fcitx-modules libfcitx-core0 libfcitx-config4 libfcitx-utils0 libfcitx-gclient1 -y sudo apt autoremove -y sudo apt autopurge -y
`

编译

在解压后的文件夹中运行终端

rm -rf build && mkdir build && cd build

cmake \
-DCMAKE_C_COMPILER=gcc-11 \
-DCMAKE_CXX_COMPILER=g++-11 \
-DENABLE_QT5=Off \
-DENABLE_QT4=Off \
-DENABLE_QT6=ON \
-DBUILD_ONLY_PLUGIN=ON \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH=/opt/Qt/6.10.3/gcc_64 \ #这里需要和Qt Creator编译版本一致
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
..

make -j$(nproc)

在路径build/qt6/platforminputcontext/下生成了libfcitx5platforminputcontextplugin.so

复制到对应目录

复制到如下两个路径即可

/opt/Qt/6.9.2/gcc_64/plugins/platforminputcontexts/

/opt/Qt/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值