事件
环境
| 项目 | 值 |
|---|---|
| 操作系统 | Debian 12 |
| 桌面环境 | xfce 4 |
| 输入法 | fcitx 5 |
背景
-
最早在
Debian上安装Lazarus是直接sudo apt install lazarus,即使用的是官方仓库的版本,也是戏称为万年不更新版。默认安装的是Gtk2版,该版存在中文输入法问题(输入法问题可参照解决Debian上Lazarus输入法问题);也可以把IDE改为Qt5版,同样可以使用中文输入法。 -
想用最新版
Lazarus 3.4,直接在官网下载最新的deb包,没有安装成功。 -
后来使用的是
fpcupdeluxe-x86_64-linux安装,即Gtk2版,但是由于官方并没有合并中文输入法的解决方案,每次升级都要再做一遍,麻烦。 -
现在,准备使用
fpcupdeluxe-x86_64-linux-qt5直接安装Qt5版。
问题
直接使用fpcupdeluxe-x86_64-linux-qt5安装,报错:
|
|
是因为缺少libQt5Pas.so.1,安装libqt5pas-dev包:
|
|
再次安装,又报错:
|
|
先安装Gtk2版,再修改为Qt5版,编译还报错。编写普通的应用,编译为Qt5版,同样报错。
安装官方仓库的Lazarus 2.2,一切正常。
解决
去github上查看fpcupdeluxe相关的issues,说是要下载1.2.15版的libqt5pas,并安装:
|
|
进一步查看,其实是因为Qt5删除/更新了部分接口导致不兼容了,而Debian 12的官方仓库中并未包含该更新,所以需要手动下载安装,Debian 13的官方仓库中已经包含了,像以前一样直接安装即可。
其它相关
-
Qt6版同样需要手动安装对应的包,下载地址 -
已知
Qt5和Qt6中无法输入汉字不和有,词组最多只能输入两个字,多余的会截断。