【linux】记录archlinux软件包更新后lualatex无法编译的一种解决方案

1 环境参数

操作系统:archlinux

Kernel: 6.4.11-arch2-1

包管理器:pacman

日期:2023.08.25

2 问题描述

今天一如往常地进行软件包更新:

bash 复制代码
sudo pacman -Syu

随后,在使用luelatex对我的论文(latex)进行编译时,无法编译。想到在软件更新前还能编译,更新后就无法编译,必然是软件包版本问题。在命令行运行lualatex报错:

bash 复制代码
$ lualatex
PANIC: unprotected error in call to Lua API (zlib library version does not match - header: 1.2.13, library: 1.3)
[1]    8226 IOT instruction (core dumped)  lualatex

所以断定是 zlib 软件包更新导致的。

3 解决方案

既然是软件包更新导致,那么对软件包进行降级即可。操作:

  1. 下载 downgrade 工具,以便对软件包降级
bash 复制代码
sudo pacman -S downgrade
  1. 由于 zlib 包被 lib32-zlib 包所依赖,所以不能直接对 zlib 降级,先对 lib32-zlib 降级:
bash 复制代码
sudo downgrade lib32-zlib
  1. 最后对 zlib 降级:
bash 复制代码
sudo downgrade zlib

至此, lualatex 可以正常编译,问题解决。

相关推荐
小白还菜25 分钟前
linux(Debian)使用mdadm组磁盘RAID1阵列
linux·运维
不怕犯错,就怕不做1 小时前
GIT的简单打patch应用format-patch and git am
linux·git·全文检索
web守墓人1 小时前
【go语言】gotar:使用go语言复刻tar命令,并加入7z支持,可独立运行在windows、linux、macos上
linux·macos·golang
就牙白2 小时前
中科方德服务器打包RPM
linux·python
REDcker2 小时前
基于 eBPF 的网络可观测:协议栈路径与 sk_buff
linux·服务器·网络·php·ebpf·bpf
看-是灰机2 小时前
使用go语言实现对接
linux·开发语言·后端·docker·语言模型·golang·飞书
草莓熊Lotso2 小时前
【Linux网络】深入理解Linux IO多路复用:从本质到select服务器实战
linux·运维·服务器·c语言·网络·数据库·c++
fen_fen2 小时前
麒麟 Linux aarch64安装.NET 6,并适配.net应用(达梦数据库)
linux·服务器·.net
fen_fen2 小时前
Filebeat 采集 应用日志部署 & Kibana 查询操作文档
linux·运维·服务器
苏宸啊2 小时前
linux线程池
linux