RMarkdown转PDF时出现execution halted错误,寻求解决方案
解决RMarkdown编译时"execution halted"报错的方案
错误核心原因
- 报错里的
Bad CPU type in executable是关键:RStudio自带的pandoc程序和你的Mac CPU架构不兼容(比如M系列ARM芯片匹配了x86版本的pandoc) - 路径显示在
/private/var/folders/.../AppTranslocation/...下,说明Mac的Gatekeeper安全机制将RStudio隔离到临时位置,导致内置的pandoc无法正常调用
具体解决步骤
步骤1:解除RStudio的App Translocation隔离
- 确保把RStudio.app从下载的dmg镜像里拖到应用程序文件夹(不要直接从dmg镜像里启动)
- 打开终端,执行命令:
xattr -d com.apple.quarantine /Applications/RStudio.app - 重启RStudio
步骤2:手动安装兼容架构的pandoc
如果步骤1无效,说明自带pandoc确实不兼容,手动安装适配版本:
- 下载对应你CPU架构的pandoc安装包(ARM版对应M系列芯片,x86版对应Intel芯片),完成安装
- 在RStudio里指定手动安装的pandoc路径:
- 点击顶部菜单栏
Tools->Global Options->R Markdown - 在
Pandoc executable栏,选择你安装的pandoc路径(比如M系列Mac默认路径为/usr/local/bin/pandoc,Intel Mac若用brew安装则为/opt/homebrew/bin/pandoc) - 点击
Apply后重启RStudio
- 点击顶部菜单栏
步骤3:验证pandoc状态
在RStudio控制台执行以下命令,检查pandoc是否正常:
rmarkdown::pandoc_version()
若返回版本号,说明配置成功,可尝试重新编译RMarkdown文件。
内容的提问来源于stack exchange,提问作者Eunice Choi
相关产品推荐
相关产品推荐

