統合演習で学生が使用するデータを自動的に生成する必要がある C++ プログラムを作成しています。私はすでにこのデータを .tex ファイルにエクスポートしており、C++ プログラムでこれらの tex ファイルを自動的にコンパイルできるようにしたいと考えています。
通常、次のようにして、コマンド ラインから tex ファイルをコンパイルします。
$ latex file.tex
$ latex file.tex
$ dvipdf file.dvi
そこで、C++ コードで次のことを試してみました (ディレクトリとファイル名はどちらも文字列です)。
//Move to the location where I created the files
string mycommand = "cd ";
mycommand += directory;
system(mycommand.c_str());
//Compile latex
mycommand = "latex " + filename + "_main.tex";
system(mycommand.c_str());
system(mycommand.c_str());
//Create .pdf
mycommand = "dvipdf " + filename + "_main.dvi";
system(mycommand.c_str());
次に、端末出力に次のエラー メッセージが表示されます。
sh: latex: command not found
sh: latex: command not found
sh: dvipdf: command not found
これをオンラインで検索しましたが、この問題の解決策を見つけることができませんでしたが、非常に単純なものである可能性が高いと思います.
私はOSXで作業しており、次のバージョンのラテックスがインストールされています:
pdfTeX 3.1415926-2.4-1.40.13 (TeX Live 2012)
kpathsea version 6.1.0
すべてのヘルプは大歓迎です!