简而言之,我的文档使用 TeXShop 编译没有问题,但使用命令行 pdflatex 完全没有问题。奇怪的是,pdflatex 无法识别一些已安装的基本包(例如:url.sty)。
我需要使用命令行选项,因为我正在从另一个脚本调用它。
我需要更新什么?是设置路径的问题吗?
我在 OSX 10.6.8 上运行 MacTeX2013。同样的设置在 Ubuntu 12.04 LTS 上使用命令行 pdflatex 运行时没有问题。
答案1
通过检查 的输出which pdflatex
,似乎您正在使用 MacPorts 提供的 TeX 发行版。就我个人而言,我认为不建议通过 MacPorts 使用 TeX 发行版;在我看来,MacTeX 是在 Mac 上获取更新且稳定的 TeX 发行版的最佳方式,更不用说系统设置中方便的 TeX 管理器了。
如果您从 MacPorts 中删除 TeX 发行版,路径检查将仅返回您需要的 TeX 工具的一个实例,即位于 中的那个/usr/texbin
,即 TeXShop 正在使用的那个。无论如何,如果您想继续使用这两个发行版,让我们看看如何处理它们。
在 TeXShop 中设置 MacPorts TeX 发行版
MacPorts 的 TeX 工具位于 内/opt/local/bin
。如果我们想在 TeXShop 中使用它们,我们需要添加完整路径。在 TeXShop 中,从菜单中转到TeXShop
,然后Preferences
选择 。选择Engine
选项卡。将弹出以下屏幕:
通过命令行设置 TeX 工具
如果你想设置你的终端使用某个 TeX 发行版,我们需要先检查路径。问题
echo $PATH
并查看输出。如果,例如,/usr/texbin
比 先出现/opt/local/bin
,由于路径搜索优先级,TeX 工具将来自 MacTeX 而不是 MacPorts。如果您碰巧想要反转顺序,我们需要编辑路径。我建议设置 或.bashrc
。.bash_profile
我通常更喜欢后者。
转到终端并输入:
touch ~/.bash_profile
open ~/.bash_profile
.bash_profile
如果不存在,第一个命令将创建它,而第二个命令将在您的默认编辑器中打开它。现在,将以下行添加到您的文件中
export PATH=/opt/local/bin:${PATH}
如果你想让 MacPorts 的 TeX 发行版首先出现,或者
export PATH=/usr/texbin:${PATH}
首先检查 MacTeX。然后保存文件。您可以通过发出以下命令将修改应用于当前会话
source ~/.bash_profile
附加信息
正如 egreg 和 Alan 在命令中提到的,最好依赖官方 MacTeX 发行版,而不是依赖 MacPorts 发行版。此外,/opt/local/bin
由于路径优先级,依赖作为第一个搜索路径可能会干扰其他系统工具。MacTeX 始终是最好的解决方案。
希望能帮助到你。:)