1. 程式人生 > >如何解決 texlive 升級後latexmk無法正常工作的問題

如何解決 texlive 升級後latexmk無法正常工作的問題

2018-11-07

原來win7下安裝的texlive2016,後來解除安裝升級到2017,出現latexmk無法正常工作的情況,繼續升級到2018也有類似的問題。 在另一個筆記本上實驗,也有類似的問題。

問題的表現是latexmk找不到xelatex命令?但明明cmd中執行xelatex命令是存在的,這說明系統路徑上可能存在問題。但無法確定什麼原因所在,找問題的過程是嘗試的過程。

首先在一個筆記本檢視,看路徑似乎也沒有什麼問題,嘗試半天找不到原因。

於是想到能否用.latexmkrc,是不是會有相同的表現的,而且故意把.latexmkrc內容寫錯,會是什麼現象?

在cmd中執行latexmk,發現這次有了提示,似乎是可以通過tlmgr命令設定perl 路徑為texlive所帶內部的perl的路徑,於是按照提示的命令,執行後發現問題解決。

latexmk可以使用了。

我以為另一臺式機上也是同樣的問題,所以,也沒有把筆記本上的命令記錄下來。但按照同樣的前面的方法,沒有得到需要的提示。按照記憶的提示內容進行搜尋perl built in tlmgr 等搜尋關鍵詞,搜尋latexmk文件,幫助,以及tlmgr的幫助也沒有找到相似的命令。這次似乎是沒有辦法了。

再次分析桌上型電腦上的問題,測試錯誤的.latexmkrc檔案也沒有特別的提示,主要還是找不到xelatex,biber等命令,那還是路徑問題,到底怎麼回事呢?

檢視path路徑似乎沒有問題,但還是要測試,於是利用cmd的set命令臨時設定path為簡單的texlive 2018的bin路徑,發現這時latexmk編譯沒有問題了,那麼只能說明,系統設定的path路徑引數中有問題,導致latexmk找不到路徑。於是一個一個測試,發現其中有一個帶雙引號的路徑是關鍵,它導致了後面的texlive 路徑似乎沒有作用。於是將該路徑刪除即解決了問題。

從這裡看到,latexmk和cmd尋找路徑的機制肯定不同,cmd能正常的搜尋的路徑,而latexmk則不行,這在以後使用應多加註意。