admin管理员组文章数量:1651280
由于搜狗输入法依赖fcitx,所以我们解决该问题的核心操作是为QtCreator提供支持fcitx
本系统环境说明:ubuntu22.04、Qt5.12.8、Qt6.6.1(我安装了Qt5、Qt6)
一、尝试拷贝系统自带libfcitxplatforminputcontextplugin.so到Qt安装目录/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/
参考链接:https://blog.51cto/wangguangjie/4753356
注意:我只拷贝到了上述博客的路径1中了,并且我拷贝完成后依旧无法输入中文,可能原因是命令安装的fcitx版本只支持Qt4编写的QtCreator与目前主流的QtCreator不兼容(目前主流的QtCreator均使用Qt编写)
二、下载fcitx-qt5自己编译
下载链接:GitHub - fcitx/fcitx-qt5: Fcitx support for Qt5
步骤:
解压源码,创建编译目录build,然后执行cmake命令,如下图:
解决上图编译中报错:
参考链接:cmake fcitx-qt5时报错"ECM" - SegmentFault 思否
sudo apt install mesa-common-dev libglu1-mesa-dev
安装完后接着编译 ,如下图:
参考链接:https://wwwblogs/brifuture/p/9634219.html
sudo apt install libxkbcommon-dev
接着编译,接下来会出现下图错误:
因此我们需要更改环境变量添加CMAKE_PREFIX_PATH,因为我同时安装了Qt5和Qt6所以添加了两个路径(注意:每次只能有一个生效,另一个需要注释)。当然也可以不使用环境变量指定,在用cmake命令编译时通过-DCMAKE_PREFIX_PATH=/opt/Qt/Qt5.12.8/5.12.8/gcc_64指定,二选其一。
由于我是双Qt,并且我只需要编译插件,所以我对源码的顶层CMakeLists.txt做了以下更改
主要是打开了Qt6编译 关闭Qt library编译以及更改了Qt版本变,编译成功如下图:
接下来就是拷贝编译生成的库,以及重新启动QtCreator
sudo cp libfcitxplatforminputcontextplugin.so /opt/Qt/Qt5.12.8/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/
sudo cp libfcitxplatforminputcontextplugin-qt6.so /opt/Qt/Qt6.6/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/
版权声明:本文标题:解决Qtcreator搜狗输入法无法输入中文问题 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1729560096a1206230.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论