You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacOS下运行Quarto Preview时Pandoc/LPEG代码签名错误求助

问题

MacOS Sonoma 14.2.1下运行quarto preview预览.qmd文件时,触发lpeg模块加载错误:

无法加载/usr/local/lib/lua/5.4/lpeg.so,文件无cdhash、未签名,至少需临时签名。

给lpeg.so临时签名后出现新报错:

映射进程与文件Team ID不匹配,系统日志显示pandoc(Team ID: FYF2F5GFX4)与无Team ID的lpeg.so验证失败。

当前环境版本:

  • Pandoc 3.1.12.3(Lua 5.4)
  • Quarto 1.4.551
  • Xcode 15.3(15E204a)
已尝试操作
  • 通过Homebrew更新重装pandoc和lpeg
  • 卸载后改用.pkg安装pandoc、luarocks安装lpeg
  • 对lpeg.so执行临时签名操作
解决办法

方法1:使用pandoc内置的lpeg库

Pandoc自带适配的lpeg版本,无需依赖系统或luarocks安装的版本。先设置环境变量让pandoc优先加载内置库:

export LUA_PATH=''
export LUA_CPATH=''

设置完成后重新运行quarto preview测试。

方法2:用带Team ID的证书签名lpeg.so

  1. 打开Keychain Access,创建一个代码签名证书(类别选择Code Signing)
  2. 记录证书的通用名称(例如"My Code Signing Cert")
  3. 对lpeg.so执行签名,指定刚创建的证书:
codesign -s "My Code Signing Cert" /usr/local/lib/lua/5.4/lpeg.so
  1. 签名完成后验证签名信息:
codesign -dv --verbose=4 /usr/local/lib/lua/5.4/lpeg.so

确认输出中包含证书对应的Team ID后,再尝试运行quarto preview。

方法3:降级Xcode到15.2版本

有用户反馈Xcode 15.3的代码签名机制存在兼容性问题,降级到15.2版本后,之前的临时签名方式可正常生效。

内容的提问来源于stack exchange,提问作者road_rash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 12:03:14