MacOS Monterey环境下Emacs 27.2配置pdf-tools出现autoreconf编译错误求助
macOS下pdf-tools编译报
No such program: autoreconf的解决方案 问题根因
GUI模式启动的Emacs默认不会继承终端的PATH环境变量,即使你在终端中确认autoreconf已安装,Emacs内部搜索可执行文件的路径仍未包含autoreconf的安装目录。
解决方案
- 第一步:确认autoreconf的安装路径
打开终端执行which autoreconf,Intel芯片Mac通常输出为/usr/local/bin/autoreconf,Apple Silicon芯片Mac通常输出为/opt/homebrew/bin/autoreconf。 - 第二步:同步Emacs的可执行文件搜索路径
在你的init.el配置文件中添加以下代码,对应替换为你上一步得到的路径前缀:
配置完成后重启Emacs,再次执行;; 以Intel芯片为例,Apple Silicon请替换为/opt/homebrew/bin (add-to-list 'exec-path "/usr/local/bin") (setenv "PATH" (concat "/usr/local/bin:" (getenv "PATH")))pdf-tools-install即可正常编译。 - 备选方案:手动编译epdfinfo组件
如果上述配置后仍报错,可直接在终端手动完成编译,避免Emacs内部调用编译命令的环境问题:- 终端进入pdf-tools的服务端目录:
cd ~/.emacs.d/elpa/pdf-tools-20211110.513/build/server/ - 依次执行编译命令:
autoreconf -i ./configure make make install - 重启Emacs后即可正常使用pdf-tools,无需再次执行安装命令。
- 终端进入pdf-tools的服务端目录:
额外注意事项
如果你使用的是Apple Silicon芯片的Mac,你之前配置的PKG_CONFIG_PATH需要同步更新为ARM架构的Homebrew路径,避免后续依赖查找报错:
(setenv "PKG_CONFIG_PATH" "/opt/homebrew/Cellar/zlib/1.2.13/lib/pkgconfig:/opt/homebrew/lib/pkgconfig:/opt/X11/lib/pkgconfig")
路径中的zlib版本号可根据你本地实际安装的版本调整。
内容的提问来源于stack exchange,提问作者user11209
相关产品推荐
相关产品推荐

