手动升级fcitx-rime以及librime
Tofloor
poster avatar
9***8@qq.com
deepin
2018-01-14 00:05
Author
本帖最后由 lineme 于 2018-1-13 16:24 编辑

之前发过一贴,建议官方仓库更新『fcitx-rime』

https://bbs.deepin.org/post/150946


仓库的fcitx-rime是2013年左右的版本,这4年多以来,rime的引擎组件 (librime) 修正了不少bug,加入了OpenCC支持,可以做到打简出繁,打繁出简,以及各种表情符号自定义等高级功能。

而fcitx-rime前端也为高分屏适配了svg素材。

最近的fcitx-rime前端是2017年9月份更新的,官网源码在这里:

https://download.fcitx-im.org/fcitx-rime/




我看到debian 的 fcitx-rime 更新到了这个版本,但是可能打包人员对于 fcitx-rime 理解不够,并没有把 librime 这个核心组件升到最新的分枝代码(librime-develop)上来。


编译 librime 是可以独立进行的,这样,虽然 fcitx-rime 的前端旧了点,但是输入法的核心 librime 功能上的 bug 已被干掉了。然而实践之后,才知道原来是太幼稚的想法,需要配个最新的 fcitx-rime 才成。

于是从代码编译 fcitx-rime ,发现它在cmake时,对 fcitx 主程序也是要有求的,不然不通过,只好先把 fcitx 给编译了。

最终,一切OK。


不过,编译 fcitx 需要更多依赖,尤其是 qt4 和qt5 都需要,真非常蛋疼。


所以,我在debian 源上找了新的deb包,然后把它安装到系统(这样免掉编译 fcitx & fcitx-rime 之苦),再独立编译 librime 就成了,用它替换一下,应该就能工作了。


安装G++,以及CMAKE组件,并编译安装 libgtest 库

$sudo apt install g++
$sudo apt install cmake cmake-extras extra-cmake-modules
这之后,需要重启一次电脑,不然cmake会报错,估计是 g++ 库没加载,重启后就可以了。
$sudo reboot

编译libgtest库:

$sudo apt install libgtest-dev
$cd /usr/src/gtest
$sudo mkdir build
$cd build
$sudo cmake ..
$sudo make
$sudo cp libgtest*.a /usr/local/lib

使用sudo apt install 顺次安装如下 Librime的依赖:

libgtest-dev
libgoogle-glog-dev
libleveldb-dev
libmarisa-dev
libopencc-dev
libboost1.62-dev
libboost-dev
libboost-all-dev
libyaml-cpp-dev
libmlt++-dev
libdbus-1-dev


下载最新的Librime分枝代码
https://codeload.github.com/rime/librime/zip/develop



×
我先编译着
×



Reply Favorite View the author
All Replies
avatar
9***8@qq.com
deepin
2018-01-14 00:29
#1
本帖最后由 lineme 于 2018-1-13 16:31 编辑

编译很顺利,过程供参考

重点,install的部分,这个是librime的所有文件明细:

Install the project...
-- Install configuration: "Release"
-- Installing: /usr/include/rime_api.h
-- Installing: /usr/lib/pkgconfig/rime.pc
-- Installing: /usr/share/cmake/rime/RimeConfig.cmake
-- Installing: /usr/lib/librime.so.1.2.9
-- Installing: /usr/lib/librime.so.1
-- Installing: /usr/lib/librime.so
-- Set runtime path of "/usr/lib/librime.so.1.2.9" to ""
-- Installing: /usr/bin/rime_dict_manager
-- Set runtime path of "/usr/bin/rime_dict_manager" to ""
-- Installing: /usr/bin/rime_deployer
-- Set runtime path of "/usr/bin/rime_deployer" to ""

可以写成脚本,方便安装或删除:

/usr/include/rime_api.h
/usr/lib/pkgconfig/rime.pc
/usr/share/cmake/rime/RimeConfig.cmake
/usr/lib/librime.so.1.2.9
/usr/lib/librime.so.1
/usr/lib/librime.so
/usr/bin/rime_dict_manager
/usr/bin/rime_deployer






Reply View the author
avatar
152******14
deepin
2018-01-14 02:11
#2
看到你这样,我觉得还是不升级的好。
Reply View the author
avatar
JJRDC
deepin
2018-01-14 03:14
#3
本帖最后由 JJRDC 于 2018-1-13 20:10 编辑

debian 源上新的deb包。

我从163的debian源上下载了fcitx-bin_4.2.9.4-3_amd64.deb 和 fcitx-rime_0.3.2-1_amd64.deb,你说的deb包是不是这两个包?
Reply View the author
avatar
9***8@qq.com
deepin
2018-01-14 07:40
#4
https://bbs.deepin.org/post/151771
debian 源上新的deb包。

我从163的debian源上下载了fcitx-bin_4.2.9.4-3_amd64.deb 和 fcitx-rime_0.3.2-1 ...

好多呢,不止
Reply View the author
avatar
dzuiuabi
deepin
2018-01-14 08:37
#5
哇,我以为你成功了,结果还在测试,差点就跟你做了。
Reply View the author
Comments
lineme
2018-01-14 08:38
成功了啊,你不用编译了,我发个包儿。
avatar
dzuiuabi
deepin
2018-01-14 08:42
#6
好啊,没有什么问题吗?你现在使用的新功能,就是目前你看到的有哪些呢?
Reply View the author
avatar
9***8@qq.com
deepin
2018-01-14 08:52
#7
本帖最后由 lineme 于 2018-1-14 15:58 编辑
https://bbs.deepin.org/post/151771
好啊,没有什么问题吗?你现在使用的新功能,就是目前你看到的有哪些呢?
...

https://pan.stnts.com/s/EehUG7h
依次安装编好号的deb

然后,在 sent.sh 这个脚本处打开终端

sudo sh sent.sh

脚本会将 librime 的几个库文件发到指定目录。

至于 rime 的配置文件,

与原来是通用的。

你说 fcitx-rime 的话,最显见的,就是高分屏适配了。



Reply View the author
Comments
JJRDC
2018-01-14 19:35
功德无量
JJRDC
2018-01-14 19:34
功能无量
avatar
dzuiuabi
deepin
2018-01-14 09:06
#8
https://bbs.deepin.org/post/151771
https://pan.stnts.com/s/8azEC33

依次安装编好号的deb

非常感谢!
Reply View the author
avatar
shea64
deepin
2018-01-14 23:38
#9
你好,我用您的方法安装了,但是fcitx输入方式里找不到rime
Reply View the author
Comments
lineme
2018-01-14 23:48
重启一次看看
avatar
kai-t
deepin
2018-01-14 23:40
#10
支持!支持!支持!
Reply View the author
avatar
shea64
deepin
2018-01-15 00:09
#11
你好,我按照您的方式安装了librime,但是fcitx里选择输入法列表里找不到rime
Reply View the author
Comments
lineme
2018-01-15 00:16
怎么做的?
avatar
shea64
deepin
2018-01-15 00:29
#12
https://bbs.deepin.org/post/151771
你好,我按照您的方式安装了librime,但是fcitx里选择输入法列表里找不到rime

不好意思,重复回复了。就是下载您的压缩包,解压安装,再用sent.sh迁移相关库。然后重启在输入法选择里找不到rime
Reply View the author
Comments
lineme
2018-01-15 00:38
你终端输一下『fcitx』然后,截个图看看,以及输入法列表的添加那里,也截个图
avatar
dzuiuabi
deepin
2018-01-17 02:10
#13
4和5不能安装,提示缺少依赖。
Reply View the author
Comments
lineme
2018-01-17 03:51
https://pan.stnts.com/s/EehUG7h
avatar
9***8@qq.com
deepin
2018-01-17 03:47
#14
https://bbs.deepin.org/post/151771
4和5不能安装,提示缺少依赖。

一定要按顺序,否则就会出错,不要用老王的安装器(不靠谱),用gdebi。

用gdebi顺次打开它,点一遍「卸载」,只「卸载」,以保证所有冲突都已 fuck off。

然后再用gdebi顺次打开它们,点一遍「安装」,就成了。

会出问题,就是因为你之前可能已经装过别的版本,办法就是用deb包,顺藤摸瓜先卸载一遍。
Reply View the author
avatar
dzuiuabi
deepin
2018-01-17 04:26
#15
https://bbs.deepin.org/post/151771
一定要按顺序,否则就会出错,不要用老王的安装器(不靠谱),用gdebi。

用gdebi顺次打开它,点一遍「卸 ...

都卸载吗?
Reply View the author
Comments
lineme
2018-01-17 04:29
是的
avatar
dzuiuabi
deepin
2018-01-17 04:39
#16
依赖多个软件包,不能卸载……哈哈哈哈
Reply View the author
Comments
lineme
2018-01-17 05:02
服气,等着deepin升级吧。
avatar
dzuiuabi
deepin
2018-12-23 01:10
#17
能不能在发一次之前的丢失了
Reply View the author
Comments
lineme
2018-12-23 04:01
deepin仓库已经更新了,无需手动再更新