2016-06-01 51 views
-1

我想從C++程序(我正在使用Xcode)編譯LaTeX源代碼。 shell命令是xelatex(XeLaTeX是我使用的變體)並且不可能更容易。這裏是語法:無法從C++系統()函數運行LaTeX

xelatex file.tex 

這就像一個魅力。我每天多次使用這個命令。

然而,以下C++線

system("xelatex file.tex"); 

返回錯誤消息,指出該命令不存在(sh: xelatex: command not found要準確)。有什麼理由呢?

回答

3

我想這是因爲xelatex所在的目錄不在$PATH的值中。

可以肯定的是,使用完整路徑;像

system("/home/zozor/something/xelatex /home/zozor/somethig_else/file.tex"); 

如果xelatexfile.tex是在運行C++程序,你可以嘗試在同一目錄下(但我建議的完整路徑之前嘗試)

system("./xelatex file.tex"); 

PS:抱歉,對我的英文不好