筆記

筆記

我可能發現了一個問題xelatex。不幸的是,我不知道如何輕鬆重現錯誤 256。我所知道的是,它是在運行迭代許多 TeX 檔案的自動化腳本時發生的,而不是在我處理特定檔案時發生的。這個問題的可疑性質使我很難確定導致問題的條件。事實上,無論如何,我對解決這裡的問題不感興趣。讓我感到奇怪的是,我的腳本旨在檢測錯誤代碼(如果返回代碼不為 0,請識別該垃圾並告訴我)。

進程呼叫是

/usr/local/texlive/2016/bin/x86_64-linux/xelatex -interaction=nonstopmode -halt-on-error -file-line-error DVDCover.tex

一旦出現任何問題,它都應該返回並產生非零值——這將是正常 Unix 二進位檔案的預期行為。

因此,比問題本身更可怕的是xelatex返回 0,就好像一切都很好。日誌中的最後幾行內容如下:

Error 256 (driver return code) generating output;
file DVDCover.pdf may not be valid.

筆記

答案1

從未答复的清單中獲取此資訊。

失敗時,如果先呼叫然後xdvipdfmx呼叫 ,則會收到錯誤代碼 1(來自 xdvipdfmx)。xelatex --no-pdfxdvipdfmx file.xdv

在「組合」編譯中xelatex file xetex顯然會檢查 的退出程式碼xdvipdfmx,畢竟它向日誌和終端添加了一條訊息。但目前如果驅動程式存在且為 1,它不會改變自己的狀態。

xetex 網站上對此進行了討論:https://sourceforge.net/p/xetex/bugs/140/。此錯誤已解決,未來版本將在驅動程式失敗時以狀態 1 退出。

相關內容