Linux Qt 使用搜狗输入法

文章目录

  • Linux Qt 使用搜狗输入法
    • 前言
    • 解决方案
      • Qt Creator 使用搜狗输入法
      • Qt 生成的应用使用搜狗输入法
    • 获取小企鹅输入法扩展
      • 直接 apt 安装
      • 源码编译
    • 附件

前言

不出意外的话,Qt 是不能使用搜狗输入法的,状态栏都看不到那种。

主要是搜狗输入法使用的是小企鹅(fcitx) 输入框架,Qt 默认没有集成。

解决方案

将小企鹅输入法扩展复制到相应的路径下,如果自己系统内没有并没有 libfcitxplatforminputcontextplugin.so 那就请看获取小企鹅输入法扩展

Qt Creator 使用搜狗输入法

复制小企鹅扩展到 Qt Creator 相应路径下

$QtDir为自己 Qt 的安装路径

cd $QtDir/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts
sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so .
sudo chmod +x libfcitxplatforminputcontextplugin.so

Qt 生成的应用使用搜狗输入法

复制小企鹅扩展到 Qt 相应路径下

$QtDir为自己 Qt 的安装路径

$QtVersion 为自己 Qt 的版本号

cd $QtDir/$QtVersion/gcc_64/plugins/platforminputcontexts
sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so .
sudo chmod +x libfcitxplatforminputcontextplugin.so

经过上面的简单操作就能愉快的在 Qt 使用搜狗输入法了。

获取小企鹅输入法扩展

直接 apt 安装

sudo apt install fcitx-frontend-qt5

但是不出意外的话,这里要下载安装几百兆文件,万一我那是嵌入式系统,完全遭不住好吗

源码编译

获取源码

https://github.com/fcitx/fcitx-qt5

安装编译需要的库

这里默认认为早已经安装 C++ 编译环境了哈

sudo apt install extra-cmake-modules
sudo apt install libxkbcommon-dev
sudo apt install fcitx-libs-dev

编译

cd $fcitx-qt5-dir
mkdir build && cd build
# 指定qt库的路径,我不需要其他库,所以-DENABLE_LIBRARY=OFF
cmake .. -DCMAKE_PREFIX_PATH=$QtDir/$QtVersion/gcc_64/lib/cmake/ -DENABLE_LIBRARY=OFF
make
sudo make install

然后就能在 $QtDir/$QtVersion/gcc_64/plugins/platforminputcontexts 下面看到我们需要的库了

附件

预编译的 x86_64 的 libfcitxplatforminputcontextplugin.so 下载

预编译的 aarch64 的 libfcitxplatforminputcontextplugin.so 下载


由于个人水平有限,文中若有不合理或不正确的地方欢迎指出改正

若文中个人文章链接打不开,请在站内寻找同名文章

文章可能更新不及时,请以个人博客处文章为准

004 - Linux Qt 使用搜狗输入法相关推荐

  1. linux开发板汉字显示,Linux Qt 及Arm开发板汉字显示

    作为一个优秀的开发人员,我就不说废话了. 很多人在 使用Qt做嵌入式开发时,会遇到一个问题: 汉字显示,网上有好多方法,并且针对 Qt5 以前的版本和Qt5 的版本有不同的方法,同样,我也遇到了这个问 ...

  2. linux+Qt 下利用D-Bus进行进程间高效通信的三种方式

    linux+Qt 下利用D-Bus进行进程间高效通信的三种方式 原文链接: https://www.cnblogs.com/wwang/archive/2010/10/27/1862552.html ...

  3. Linux+Qt 下同一数据空间vfork多进程间通信的一种高效便捷方式(信号槽直接调用)

    Linux+Qt 下同一数据空间vfork多进程间通信的一种高效便捷方式(信号槽直接调用) 概述 传统的多进程间通信往往非常麻烦,采用的方法比如管道,共享内存,socket,文件等,大都非常繁琐, 1 ...

  4. I.MX6 linux Qt 同时支持Touch、mouse

    /****************************************************************************** I.MX6 linux Qt 同时支持T ...

  5. I.MX6 Linux Qt 启动流程跟踪

    /*************************************************************************** I.MX6 Linux Qt 启动流程跟踪* ...

  6. linux内核镜像sd卡,【原创】Linux QT镜像的制作--制作SD卡启动盘

    最近买了个新的开发板,原生的是Android操作系统,需要自己少个启动盘,制作Linux+QT操作系统. 新的开发板带这个制作的源文件,要先把这个文件拷贝到虚拟机Ubunbtu的共享目录下. 打开sh ...

  7. linux qt 找不到 lgl,Linux Qt cannot find -lGL错误完美解决方案(亲测有效)

    http://c.biancheng.net/view/3901.html 对于很多 Linux 发行版本,Qt 安装完成后如果直接编译或者运行项目,会出现"cannot find -lGL ...

  8. Linux Qt cannot find -lGL错误完美解决方案

    对于很多 Linux 发行版本,Qt 安装完成后如果直接编译或者运行项目,会出现"cannot find -lGL"错误,如下图所示: 这是因为 Qt 找不到 OpenGL 的动态 ...

  9. LINUX QT移植到ARM (zynq平台 qt5.4.1)

    LINUX QT移植到ARM (zynq平台 qt5.4.1) 1.安装tslib 2.安装QT5.4.1 2.1下载QT5.4.1 2.2解压 2.3修改配置文件替换自己的编译器 2.4配置 2.4 ...

最新文章

  1. pandas替换列值+1
  2. 阿里巴巴天池大数据竞赛黄金联赛全面开战,全球同步报名,只为寻找最聪明的你!...
  3. kwvcprojparser不是内部_在盗版window xp上安装的visual studio 2010学习版编译ace6.1时出现如下问题...
  4. Android网络传输中必用的两个加密算法:MD5 和 RSA 及Base64加密总结
  5. vue脚手架搭建项目_复习之vue脚手架搭建项目的两种方法
  6. python elif可以单独使用_Celery在python中的单独使用
  7. 利用ida python 实现复原函数调用的参数 (仅对数据被简单硬编码有效)
  8. 精通Android自定义View(十二)绘制圆形进度条
  9. dlut-KFQ概率上机1
  10. 机器学习(周志华)——决策树问题
  11. ZendFramework-2.4 源代码 - 整体架构(类图)
  12. ASP.NET MVC系列 框架搭建(二)之仓储层的优化
  13. 计算机微信接收excel打不开怎么回事,电脑端微信打不开怎么解决
  14. 根据录入的计算公式计算_炒股还需工匠精神:请笑纳30个财务分析指标和计算方式,上市公司财务分析必备,速速珍藏...
  15. 后装载垃圾车的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  16. python能开发安卓app吗_如何Python写一个安卓APP
  17. 用 Python 开发简单交互式 Web 应用
  18. iphone 4s 激活错误
  19. HYNB Contest 7:2017 Asia HCMC Vietnam National Programming Contest
  20. 有哪些网络推广方式,常见的网络推广方法有几种

热门文章

  1. Python中list的内存分配
  2. 解决微信二次分享bug
  3. 蓝桥杯练习:C语言十六进制转八进制
  4. [转帖] 搞笑段子 生活需要娱乐.
  5. 颈痛、膝盖痛、腰痛…一秒缓解!年过40的人手一份~(收藏)
  6. 【UE4 C++】简单获取名称、状态、时间、帧数、路径与FPaths
  7. vue动态在页面添加背景图片
  8. Linux学习 | Linux磁盘分区挂载
  9. tellg和seekg_C ++ tellg(),seekg()和seekp()示例
  10. 服务器显示网络不稳定,服务器网络丢包的原因以及解决办法