网络安装时出现“xelatex:未找到命令。”

网络安装时出现“xelatex:未找到命令。”

我在网络驱动器(实际上是 Apple Time Capsule)上安装了 TeX Live 2011 发行版。尽管pdfTeX在 TeXShop 中使用 LaTeX(通过 )进行常规 TeXing 可以正常工作,但当我尝试使用该选项时,控制台中%!TEX TS-program = xelatex只会出现错误。xelatex: Command not found.

这是我在 TeXShop 中输入的 (pdf)TeX 路径:

/Volumes/Time Capsule/TeX Live/2011/bin/x86_64-darwin/

该目录的Als -l返回以下内容:

lrwxrwxrwx@ 1 username  staff         5 23 Oct 17:00 xelatex -> xetex
-rwxrwxrwx  1 username  staff  17777824 22 Jun 00:11 xetex

但将排版选项更改为也%!TEX TS-program = xetex无济于事,因为它给了我错误xetex: Command not found.

有人知道如何解决这个问题吗?

先感谢您。

答案1

MacTeX 使用的方法是建立指向包含二进制文件的目录的符号链接。您可以尝试相同的策略:从终端发出以下命令

sudo ln -s "/Volumes/Time Capsule/TeX Live/2011/bin/x86_64-darwin" /usr/texbin
echo "/usr/texbin" > TeX
sudo mv TeX /etc/paths.d

这样,您只需将路径输入 TeXShop 的首选项即可/usr/texbin。第二行和第三行/usr/texbin也将适用于所有其他应用程序(例如终端)。

这还有另一个好处;当 TeX Live 2012 可用时,安装后你所要做的就是

sudo rm /usr/texbin
sudo ln -s "/Volumes/Time Capsule/TeX Live/2011/bin/x86_64-darwin" /usr/texbin

并且新的二进制文件将可供所有程序使用,无需任何其他干预。

如果您打算尝试 MacTeX,您可能需要选择一个不同于 的名称texbin,这将覆盖该符号链接。但恢复它只需在终端上重复该命令即可。

还要注意,此过程不会触及系统中的任何内容:只需删除符号链接和添加的文件即可获得以前的状态:

sudo rm /usr/texbin
sudo rm /etc/paths.d/TeX

答案2

问题在于我的安装细节,因为我将 TeXLive 安装到 NAS,并且只将 MacTeX 包中的“GUI-Applications.pkg”安装到我的本地机器。

因此,这实际上更多的是与 TeXShop 相关的问题,而不是 MacTeX 问题,因为事实证明 TeXShop 在其首选项中设置的路径正是其标签:(pdf)TeX。问题在于它仅有的将其用于 (pdf)TeX。所有其他所谓的 TeXShop 引擎都单独存储在用户库 ( ~/Library/TeXShop/Engines/) 中。例如,XeLaTeX 引擎如下所示:

#!/bin/tcsh

set path= ($path /usr/texbin /usr/local/bin)
xelatex  -file-line-error -synctex=1 "$1"

这意味着它专门xelatex在系统中和本地安装的PATH标准中搜索程序。bin

为了解决这个问题,我需要将遥控器添加texbin到我的系统中PATH,正如埃格尔(谢谢)或者手动将其添加到所有 TeXShop 引擎。如果采用后者,则必须像这样转义空格/Volumes/Time\ Capsule/TeX\ Live/2011/bin/x86_64-darwin,当然,正如埃格尔也一样。

相关内容