前几年用ubuntu的时候,也写过编译升级的方法,5年过去,旧的方法已经不适合现在的需要了,中间编译的时候,编译环境还是缺的蛮多的,不过好在有了AI,在AI的帮助下,总算是编译安装好了。

默认你已经下载了输入法的最新源码。

首先需要安装libpinyin

安装ibus-libpinyin官方的教程很简单的说,需要:

  • ibus
  • libpinyin
  • sqlite3

安装基础工具

在开始之前,确保编译环境是完整的:

1
2
sudo apt update
sudo apt install build-essential autoconf automake libtool pkg-config intltool gettext

依赖库清单

针对你遇到的所有 configure 报错,这里是对应的 Ubuntu 软件包:

缺失项 (报错显示)对应的安装包 (Ubuntu)
glib-2.0libglib2.0-dev
db.h / version 5libdb5.3-dev
ibus-1.0libibus-1.0-dev
sqlite3libsqlite3-dev
lua >= 5.1liblua5.1-0-dev
libnotifylibnotify-dev
libsoup-3.0libsoup-3.0-dev
json-glib-1.0libjson-glib-dev

一键安装命令:

1
2
sudo apt install libglib2.0-dev libdb5.3-dev libibus-1.0-dev libsqlite3-dev \
liblua5.1-0-dev libnotify-dev libsoup-3.0-dev libjson-glib-dev

编译

由于 Makefile 存在并行逻辑缺陷(即你遇到的 .tmp 文件找不到的问题),请务必按此顺序执行:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# 进入源码目录
./autogen.sh --prefix=/usr/  --enable-cloud-input-mode
make
sudo make install

# 核心:先单线程处理 data 目录,防止 sed 读写冲突
make -j1

# 成功后可执行安装
sudo make install
sudo ldconfig       # 刷新动态链接库

常见问题排查

  • 安装后找不到输入法? 执行 ibus-daemon -drx 重启 IBus。
  • 缺少 pinyin-data? libpinyin 只是引擎,通常还需要 pinyin-data(词库文件)。如果运行报错,检查 /usr/share/libpinyin/ 下是否有数据。