尝试从 texmaker 编译 xelatex 文档时遇到错误。 这是有关我的系统的信息
Ubuntu Gnome 15.10
Texmaker 4.4.1(由 synaptic 安装)
texlive-2015 从 DVD iso 完整安装(不是 debian 软件包)(以 root 身份安装)
$ type xelatex
xelatex is /usr/local/texlive/2015/bin/x86_64-linux/xelatex
$ ls -l /usr/local/texlive/2015/bin/x86_64-linux/
lrwxrwxrwx 1 root root 5 Aug 14 2014 xelatex -> xetex
lrwxrwxrwx 1 root root 5 Aug 14 2014 xelollipop -> xetex
-rwxr-xr-x 1 root root 22473712 May 7 2015 xetex
这是我尝试编译的文档。(产生错误的最小文档)
\documentclass[]{article}
\usepackage{polyglossia}
\setmainlanguage{english}
\begin{document}
some text.
\end{document}
这是我尝试过的
打开文档后,我首先尝试快速构建,但正如预期的那样失败了,因为 texmaker 设置为使用 pdflatex 快速构建。fontspec 包抛出一个错误,要求我使用 xelatex 或 lualatex。现在,我手动选择 Tools->Xelatex。这也失败了相同的来自 fonstpec 的错误. 错误信息是
LOG FILE :
This is pdfTeX, Version 3.14159265-2.6-1.40.16 (TeX Live 2015) (preloaded format=pdflatex 2016.1.15) 23 FEB 2016 19:51
entering extended mode
restricted \write18 enabled.
<< 省略多行 >>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
! Fatal fontspec error: "cannot-use-pdftex"
!
! The fontspec package requires either XeTeX or LuaTeX to function.
!
! You must change your typesetting engine to, e.g., "xelatex" or "lualatex"
! instead of plain "latex" or "pdflatex".
!
! See the fontspec documentation for further information.
!
! For immediate help type H <return>.
!...............................................
l.43 }
|'''''''''''''''''''''''''''''''''''''''''''''''
| This is a fatal error: LaTeX will abort.
|...............................................
我认为 texmaker 可能没有调用 xelatex,即使我从Tools->XeLatex
菜单中选择了它。现在,我打开一个终端并输入
$ xelatex myfile.tex
并且它编译时没有错误并给了我一个pdf。
因此,我搜索了网络/SE,并找到了用于旧版本 texmaker 的解决方法。(在 Texmaker 中使用 XeLaTeX 代替 pdfLaTeX)。根据说明(尽管我使用的是 texmaker 4.4.1 版本),我转到 User->UserCommands 并创建了一条新命令,如下所示
xelatex -synctex=1 -interaction=nonstopmode %.tex
这也调用了 pdflatex,编译失败。因此,我修改了用户命令如下
notify-send sometext | xelatex -synctex=1 -interaction=nonstopmode %.tex
这导致 texmaker 调用notify-send(只是一个在屏幕上显示弹出窗口的程序),然后调用 xelatex,编译成功。
我不知道问题是否是由 texmaker 引起的(因为终端 xelatex 可以工作),或者由于路径问题(因为我安装了非 debian texlive 包并在 xelatex 之前添加了虚拟命令导致 texlive 正确调用 xelatex)
我查看了这些帖子,它们似乎没有同样的问题
XeLaTex 和 TexMaker“无法使用 pdftex”