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

相关推荐
新时代牛马16 分钟前
Linux 系统调用与IPC 完整篇:从syscall 入口、VDSO 到pipe/shm/futex 选型
linux·运维·服务器
fpcc2 小时前
计算机原理—Linux是如何加载可执行文件到内存
linux
野熊佩骑2 小时前
Kubernetes实战系列文章(三) 之 K8S运维常用命令
linux·运维·docker·微服务·云原生·容器·kubernetes
码农客栈2 小时前
linux 设备树下的 platform 驱动编写
linux
小HANN2 小时前
Linux建站实战:CentOS7+LNMP 从零部署 ECShop 开源电商系统
linux·运维·服务器·经验分享
做运维的阿瑞2 小时前
Shell 脚本经典十三问:引号、变量、子 Shell 与重定向一次讲清问:引号、变量、子 Shell 与重定向一次讲清
linux·tcp/ip
昌原的儿子LEO2 小时前
Linux IO多路复用与SQLite数据库核心知识点总结
linux·数据库·oracle
GeW2 小时前
RHCE通关秘籍:从零基础到高分拿证的5个加速器
linux
前端世界3 小时前
基于 Linux 的本地 AI 智能问答平台搭建实践 —— Ollama + FastAPI + Nginx 实现本地大模型 Web 服务
linux·运维·人工智能
倔强的石头1063 小时前
【Linux指南】动静态库系列(七):符号表与重定位:链接器如何把函数调用接起来
linux·前端·javascript