【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 可以正常编译,问题解决。

相关推荐
正在学习前端的---小方同学3 小时前
Harbor部署教程
linux·运维
Sean X4 小时前
Ubuntu24.04安装向日葵
linux·ubuntu
IT 乔峰6 小时前
脚本部署MHA集群
linux·shell
dz小伟6 小时前
execve() 系统调用深度解析:从用户空间到内核的完整加载过程
linux
Mr_Xuhhh6 小时前
博客标题:深入理解Shell:从进程控制到自主实现一个微型Shell
linux·运维·服务器
JoyCheung-6 小时前
Free底层是怎么释放内存的
linux·c语言
旖旎夜光7 小时前
Linux(9)
linux·学习
喵了meme8 小时前
Linux学习日记24:Linux网络编程基础
linux·网络·学习
whlqjn_12118 小时前
linux下使用SHC对Shell脚本进行封装和源码隐藏
linux·centos
weixin_462446239 小时前
K8s 集群部署基础:Linux 三节点 SSH 互信(免密登录)配置指南
linux·kubernetes·ssh