VScodeでのコンパイルができません

VScodeでのコンパイルができません

- 福島 優 の投稿
返信数: 36
Latexを始めたいと考えているものです。VScodeに関して、わからないことがあるので質問させていただきます。
VScodeでLatexの文章をコンパイル、PDFビューワを開こうとしてもうまくいきません。Windows11でtexlive2023を使用しています。tex文章をコンパイルしようとすると、以下のようなエラーメッセージが表示されるのですが、対処方法がわかりません。
Latexmk: If appropriate, the -f option can be used to get latexmk
to try to force complete processing.
Initial Win CP for (console input, console output, system): (CP932, CP932, CP932)
I changed them all to CP932
Rc files read:
NONE
No specific requests made, so using default for latexmk.
Latexmk: Nothing to do for 'c:/Users/yufukushima/.vscode/workspace/report.tex'.
Collected error summary (may duplicate other messages):
latex: gave an error in previous invocation of latexmk.

C:\texlive\2023\bin\windows\runscript.tlu:921: command failed with exit code 12:
perl.exe c:\texlive\2023\texmf-dist\scripts\latexmk\latexmk.pl -silent -outdir=out c:/Users/yufukushima/.vscode/workspace/report

パソコンに関して知識が少なく、解決することができませんでしたのでお手数をおかけしますが回答していただけると幸いです。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 伊藤 直人 の投稿
福島 様
vscodeでコンパイルができないという時はsettings.jsonとlogファイルをアップロードしていただくと他の方も回答しやすくなるかと思いますのでアップロードしていただくと良いかと思います。

なお、settings.jsonは以下のサイトの手順で開けますのでご参考になればと思います。
https://qiita.com/y-w/items/614843b259c04bb91495
伊藤 直人 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
伊藤様

返信ありがとうございます。ログファイル、settings.jsonを追記しました。提示すべきもので合っているかどうか不安ですがよろしくお願いします。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 匿 名 の投稿
> パソコンに関して知識が少なく、解決することができませんでした
とのことですが,今後VScodeやLaTeXなど関係する知識を積極的に身に着けたいとお考えでしょうか?
もし,今回LaTeX必須のレポート課題が出されて,とりあえずPDFで出力できれば良い,くらいでしたらCloud LaTeXなどオンラインのサービスを使うのが簡単で良いように思います.
https://cloudlatex.io/

元投稿に添付されていたreport.texは特になんの設定もなく,問題なくコンパイルできました.
匿 名 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
返信ありがとうございます。
今まではCloudLatexでレポートなどを作成していました。これから先本格的にTexを活用していきたいと思い、初めてインストールして勉強し始めたといった状況になります。すぐにではなくてよいのでコンピュータについて少しずつ学習していきたいと思っています。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿
かえって難しい話題の提供になるかと思いますが、
.tex のソースから .pdf を作成する裏側の仕組みを説明しています。

単に PDF を作成するだけであれば cloud を利用するのもありですが、
せっかく texlive 2023 をローカルにインストールしていらっしゃるので
それを利用し、latex ソースから pdf を作成する仕組みを学んでください。

話を進める前に、\maketitle を利用したいなら \title{...} \author{...} \date{...}
の三行はプリアンブルと呼んでいる \documentclass と \begin{document} の
間に記述してくださいね。

さて、添付されたソースを用いた場合、最終的には以下の二つのコマンドで pdf を作成します。
(report.tex のあるディレクトリでコマンドプロンプトで実行すると pdf は作成できます)

      platex report
      dvipddfmx repor

コンソールなどに出力された情報ではvscodeのおそらくLaTeX Workshop で
「latexmk」などとした「レシピ」を利用されているようですね。

そのレシピでの不備などの指摘の前にこの latexmk を利用する場合、
「platex report / dvipdfmx report」と同等のことを行うためには
少なくとも以下のようなコマンドを発行する必要があります。
(別解は https://zenn.dev/kuuchan/articles/9764965b8eb796
のlatexmk の項参照されるとわかりますが、
ホームディレクトリに .latexmkrc などを設置する方法などもあります)

  latexmk  -latex=platex -pdfdvi  report

    ※なんとなく -latex-platex と -pdfdvi のオプションを
     指定していないのではと想像しています

このコマンドイメージを settings.json の latexmk のレシピに書いてあげないと
所望の PDF は作成できませんので伊藤直人さんが指摘されるようにうまく
設定できなければ settings.json をアップロードしてください。

もう一つのアプローチです。
かつては、platex/dvipdfmx と連携しないと pdf 作成はできませんでしたので
latexmk のようなラッパースクリプトが作られましたが、
ここ数年は 「ptex2pdf -l ファイル名」とすることでも可能になってきましたので
「vscode latexmk」だけでなく「vscode ptex2pdf」で検索して
便利な方を利用されると良いと思います。

ちなみにptex2pdf を利用した場合は、以下のコマンドが必要になることに留意してください。

        ptex2pdf -l report

latexmk との違いは、latexmk は .tex と.pdf のファイルスタンプを比較して .tex が新しければ
latexおよび関連処理を自動実行する点です。
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
和田様

返信ありがとうございます。難しいですが勉強していこうと思います。ありがとうございます。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
追記です。ログファイルはこちらであっていますでしょうか?
This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023) (preloaded format=latex 2023.6.19) 23 JUN 2023 00:57
entering extended mode
restricted \write18 enabled.
%&-line parsing enabled.
**c:/Users/yufukushima/.vscode/workspace/report.tex
(c:/Users/yufukushima/.vscode/workspace/report.tex
LaTeX2e <2023-06-01> L3 programming layer <2023-06-16> (c:/texlive/2023/texmf-dist/tex/platex/jsclasses/jsarticle.cls

! LaTeX Error: This file needs format `pLaTeX2e'
but this is `LaTeX2e'.

See the LaTeX manual or LaTeX Companion for explanation.
Type H for immediate help.
...

l.14 \NeedsTeXFormat{pLaTeX2e}

?
! Emergency stop.
...

l.14 \NeedsTeXFormat{pLaTeX2e}

The current input file will not be processed further,
because it was written for some other flavor of TeX.
You're in trouble here. Try typing to proceed.
If that doesn't work, type X to quit.


Here is how much of TeX's memory you used:
35 strings out of 477642
1128 string characters out of 5830399
1851746 words of memory out of 5000000
20638 multiletter control sequences out of 15000+600000
513387 words of font info for 34 fonts, out of 8000000 for 9000
36 hyphenation exceptions out of 8191
27i,0n,37p,120b,17s stack positions out of 10000i,1000n,20000p,200000b,200000s
No pages of output.

また、settings.jsonですが色々いじってしまったので以前にコンパイルしようとしたときと異なっているかもしれません。
{
"latex-workshop.latex.tools":
[
{
"name": "latexmk",
"command": "latexmk",
"args":
[
"-pdfdvi",
"%DOC%",
],
},
],
"latex-workshop.latex.recipes":
[
{
"name": "latexmk",
"tools":
[
"latexmk",
]
},
],
"latex-workshop.latex.clean.fileTypes":
[
"*.aux", "*.bbl", "*.blg", "*.idx", "*.ind", "*.lof", "*.lot", "*.out", "*.toc", "*.acn", "*.acr", "*.alg",
"*.glg", "*.glo", "*.gls", "*.ist", "*.fls", "*.log", "*.fdb_latexmk", "*.synctex.gz",
"_minted*", "*.nav", "*.snm", "*.vrb",
],
"latex-workshop.latex.autoClean.run": "onFailed",
"latex-workshop.latex.autoBuild.run": "onFileChange",
"latex-workshop.synctex.afterBuild.enabled": true,
"latex-workshop.view.pdf.viewer": "tab",
}
提示すべきものがあっているかとても不安です。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿
今までの情報では、ホームディレクトリやカレントディレクトリに .latexmkrc が存在しないので
larex のエンジンは platex ではなくデフォルトの pdfex となっていますね。

概略の流れですが、以下のような動きを実施します
    vscode は "latex-workshop.latex.recipes" から一つしかないレシピ「latexmk」から latexmk を起動する
    「latexmk」はホームディレクトリとカレントディレクトリの .latexmkrc を読み込もうとする
      (これらはないようなので、結果的にデフォルトがベースになります)
    以上の情報から、どのような latex コマンドを実行するか決めてタイプセットしようとする

 → 福島さんの設定では「latexmk -pdfdvi report」を実行しようとします。

これだと platex を動かしたいのに pdtex で処理されてしまうためエラーになると思います。
私の判断では 「latexmk -latex=platex -pdfdvi report」でないと pdf は作成できないと考えています。

解消方法としては .latexmkrc を新規に作成する方法もありますが、
settings.json で以下のように「"-latex=platex", 」を追加するよう修正してみてください。
※「 "latex-workshop.latex.tools"」は料理レシピになぞられるなら
 レシピ内の各工程での「微塵切り」や「賽の目に刻む」などの調理方法のように私は考えています。
  なのでタイプセットエンジンは、 platex  を利用してねっていうのを追加と考えています。

   {
                "latex-workshop.latex.tools":
                      [
                            {
                              "name": "latexmk",
                              "command": "latexmk",
                              "args":
                                    [
                                          "-latex=platex",  ←この行を追加!!「←」以降は書き込まないでね
                                          "-pdfdvi",
                                          "%DOC%",
                                    ],
                            },
                  ],
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
返信遅くなりました。
[
"-latex=platex",
"-pdfdvi",
"%DOC%",
],
と改めて実行しようとしたのですが、うまくできませんでした。
画面右下にRecipe terminated with error. Retry building the project.と表示され、もう一度ビルドしてPDFを出そうとするとCannot view file PDF file. File not found:というエラーが出てしまいます。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿
> Recipe terminated with error.

とのことなので、.tex ファイルの記述ミスか settings.json の記述ミスかと思われます。

調査するのに、 Build されようとした .tex ファイルおよび .log ファイル、 settings.json の計3つが必要です。
添付してください。

.log ファイルは .tex と同じディレクトリに生成されています。

settings.json は以下のところにあります。
   Windows : %USERPROFILE%\AppData\Roaming\Code\User\settings.json
   macOS : $HOME/Library/Application Support/Code/User/settings.json
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
texファイル
\documentclass[a4paper,11pt]{jsarticle}


% 数式
\usepackage{amsmath,amsfonts}
\usepackage{bm}
% 画像
\usepackage[dvipdfmx]{graphicx}


\begin{document}
latex

\title{}
\author{}
\date{\today}
\maketitle


\end{document}


settings.jsonは
{
"latex-workshop.latex.tools":
[
{
"name": "latexmk",
"command": "latexmk",
"args":
[
"-latex=platex",
"-pdfdvi",
"%DOC%",
],
},
],
"latex-workshop.latex.recipes":
[
{
"name": "latexmk",
"tools":
[
"latexmk",
]
},
],
"latex-workshop.latex.clean.fileTypes":
[
"*.aux", "*.bbl", "*.blg", "*.idx", "*.ind", "*.lof", "*.lot", "*.out", "*.toc", "*.acn", "*.acr", "*.alg",
"*.glg", "*.glo", "*.gls", "*.ist", "*.fls", "*.log", "*.fdb_latexmk", "*.synctex.gz",
"_minted*", "*.nav", "*.snm", "*.vrb",
],
"latex-workshop.latex.autoClean.run": "onFailed",
"latex-workshop.latex.autoBuild.run": "onFileChange",
"latex-workshop.synctex.afterBuild.enabled": true,
"latex-workshop.view.pdf.viewer": "tab",
}
になります。

.logファイルは生成されていたのを見つけたのですが、中には何も書かれていませんでした。生成された日付と時間を見るに、先ほどの返信でお伝えしたエラーが出たときに生成されたものだと思うのですがどういうことでしょうか。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿
ちょっと時間が経過したフォローだったので、新しい .tex かと思いましたが、
当初の report.tex でダメだったのですね。

さて、添付された settings.json で問題なくビルドできますね。

どうして福島さんの環境でビルドが失敗するのかあれこれ検討したのですが
??ばかりです :-(

    > "latex-workshop.latex.autoClean.run": "onFailed",
    > "latex-workshop.latex.autoBuild.run": "onFileChange",
    > "latex-workshop.synctex.afterBuild.enabled": true,
    > "latex-workshop.view.pdf.viewer": "tab",

を設定されているとのこと、
少なくとも一番上の「"latex-workshop.latex.autoClean.run": "OnFailed"」は
ルーティングワーク状態の時はある意味有効だと思いますが、
今は、せっかく記録された情報を削除してしまうので原因追及し辛くしてしまいます。
ですのでこの設定はとりあえず削除されてはいかがですか。
どんな状態でも latexmk は .tex と.pdf のタイムスタンプを比較して .tex が新しければタイプセットのビルドを行いますので。

この設定変更で .log は生成後、そのまま残りますので。

今は、処理途中の経過を把握するために必要なのでご協力お願いします。

追伸
「Moodleオートフォーマット」な状態でファイル内容をそのままここに貼り付け投稿すると
インデントが潰れてしまいます。「プレインテキストフォーマット」などを選択するか

添付するファイルを適当なディレクトリに放り込んで、それを zip で固めて「添付ファイル」としててっぷしてください。

もし、添付ファイルなどの情報が見当たらなければ、投稿しようとしているところの枠の右下の「高度」を押してみてください。
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
すみません、Buildはエラーが出なかったのですがlogファイルが更新されません。どのような原因が考えられるのでしょうか。
settings.jsonは設定変更しました。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿
福島さんのと同じ settings.json と report.tex を使っているのに
どうして福島さんのところでは失敗するのかログ情報が取得できないのでお手上げなのですが ....
.log の情報も必要ですが、
まずは、vscode が latexmk を起動して処理する過程をを調べてみたいと思います。

ただし settings.json は「2023年 06月 28日(水曜日) 20:10」に投稿されたもの。
また report.tex は添付画像にできるだけ多くの情報を表示させるため、
コメントや空行は削除しています。

以下は、添付画像を参考にして作業してください。

準備
1) TeX をクリックし
2) 「Build LaTeX project」をクリックしてそのサブメニューをオープン
    (サブメニューの 「Clean up auxiliary files」 の機能を利用するため)
3) 「View Log Messages」をクリックしてそのサブメニューをオープンし
    「View LaTeX Workshop exec..」をクリックし、LaTeX Workshop の
    機能を利用した時の処理過程を記録(表示)するよう設定しておく
    以下のメッセージが「出力」タブに表示される

        [Commander] SHOWLOG command invoked: default

検証作業

a) report.tex を Build した時の生成ファイル削除

  - 「report.tex」のタブをクリックしておく
  - 「Build LaTeX project」→「Clean up auxiliary files」のアイコンクリック

  「出力」タブに以下のような情報が記録されます。

        [Cleaner] Clean temporary files command The command is latexmk:["-c","/tmp/Report/report.tex"].

b) ビルド

  - 「report.tex」のタブの右に緑色の右向き三角の「Build」アイコンをクリックしてビルド

ここまでの作業結果の vscode のスクリーンキャプチャを取得して添付してください。

※ 「report.tex」のタブをアクティブにしておかないと、
    ビルド作業に必要なファイルを特定できなくなるので
  「root file が見つけられない」と言われるので、
  「report.tex のタブ」は適宜クリックするなどしてから
    再試行してください。
添付 スクリーンショット 2023-06-30 6.23.20 1.png
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
一連の操作をした後の画像を添付します。
添付 スクリーンショット 2023-06-30 223347.png
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿
「%WS1%」ってなんだろう?
なんとなく %USERPROFILE% 相当に思えるのだが?

それはともかく、添付の画像を参考に幾つか質問します。

質問1) 処理しようとしているreport.tex は  %WS1%\.vscode\workspace\report.tex
     となっていますが、これはおそらくホームディレクトリの .vscode\workspce の下のものでよろしいですか?

     なお outDir のメッセージを見ると report.log は .vscode\workspce の下に作成されていると思われます。

     逆に言えば、ホームディレクトリの TEST_TEX にはおかれていないのですよね。

      .log が生成されないというのはこれが原因なのかな?

質問2) report.tex の右隣に report.log がありますが、このタブに表示しているものを見せてください。

質問3)「出力」の並びに「ターミナル」タブがあります。
    これをクリックし、以下のコマンドを実行した結果を教えてください

       cd c:/Users/yufukushima/.vscode/workspace
        ls

質問4)「report.tex」タブの並びに緑のビルドボタンがあり、その右の PDF 表示アイコンをクリックしても
    PDF は表示されないのですね。

質問5)「出力」タブは、これ以上表示されるものがあるか、マウスポインタを入れて、上下に移動してみてください。
    その他のものが表示されていたら何が表示されていたか教えてください。

添付 スクリーンショット 2023-06-30 223347.png
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
質問1)
はい。.vscode\workspceの下に置いてあります。以前いじったときにTEST_TEXにも少し中身が違うものを作っていたのですが、紛らわしいのでそちらは削除しました。

質問2)
report.logには何も書かれていません。

質問3)
以下になります。
PS C:\Users\yufukushima\TEST_TEX>  cd c:/Users/yufukushima/.vscode/workspace
PS C:\Users\yufukushima\.vscode\workspace> ls


    ディレクトリ: C:\Users\yufukushima\.vscode\workspace


Mode                LastWriteTime        Length Name
----                -------------            ------ ----
d-----        2023/06/23      0:41                 .vscode
d-----        2023/06/23      0:35                  out
-a----        2023/06/21      0:28            450   .latexmkrc.pl
-a----        2023/06/28    15:27            464      report.dvi
-a----        2023/06/29    21:11            389      report.fls
-a----        2023/06/29    22:06                0      report.log
-a----        2023/06/29    22:06            249      report.tex
-a----        2023/06/21      0:34            125      Untitled-1.tex

質問4)
はい。画面右下にCannot view file PDF file. File not found: file:///c%3A/Users/yufukushima/.vscode/workspace/report.pdf
と表示されてしまいます。

質問5)
前回の検証作業後の出力タブには
[22:26:09.955][Builder] Prepared 1 tools.
の下に表示されているものはありません。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿
福島さんの環境で、vscode で latex ファイルをビルドした際に、「うまくい
かない」とのことなのに、 右下にエラーダイアログすら出ていないようなの
が不思議です。

さて、私は今まで macOS で検証していましたが、福島さんと同じ windows環
境 で私が以前「2023年 06月 22日(木曜日) 23:47 に書き込んだ
https://okumuralab.org/tex/mod/forum/discuss.php?d=3597&parent=22234を
再確認を試みました。

すると、私のテストした windows 環境においても latexmk を利用すると、
pdf を作成する段階で「dvipdf というコマンドはありません」として
以下のようにエラーになります。

   ------------
   Running 'dvipdf -dALLOWPSTRANSPARENCY  "report.dvi" "report.pdf"'
   ------------
   'dvipdf' は、内部コマンドまたは外部コマンド、
   操作可能なプログラムまたはバッチ ファイルとして認識されていません。

   ※vscode でビルドすると文字化けはするものの
    エラーとして右下に「Recipe terminated with error.」
    の警告ダイアログも表示され「Open compiler log」の
    リンクボタンもあるはずなのだが ...

dvipdf は ghostscript で提供されるものなので、これをインストールしてい
なかったからなのですが、未インストールでも
https://qiita.com/Rumisbern/items/d9de41823aa46d5f05a8の「latexmk」の
項を参考に.latexmkrc を置くことで 回避できるようです。

vscode で確認がベストなんだけれど、まずは、コマンドプロンプトでpdf の
作成ができるか試していただけませんか?

手順

1) コマンドプロンプト起動
2) 作業ディレクトリは report.tex のあるところ

      cd c:/Users/yufukushima/.vscode/workspace

3) 福島さんの settings.json から導出される以下の latexmk コマンドを実行

      latexmk -pdfdvi -latex=platex report.tex

  これは dvipdf というコマンドがないという上記エラーメッセージが表示
  されるけどテスト自体は問題無し。

4) c:/Users/yufukushima/.vscode/workspace/.latexmkrc を作成
4-1) 書き込む内容

      $latex    = 'platex';
      $dvipdf  = 'dvipdfmx %O -o %D %S';
      $pdf_mode = 3;

4-2) 実行するコマンド(-pdfdvi は不要だが 3) と同条件にするため)

      latexmk -pdfdvi -latex=platex report.tex
 
4-3) pdf が作成できなければ「 c:/Users/yufukushima/.vscode/workspace 」
    以下を zip でアーカイブしてアップロードしてください。

以上の結果から vscode での不具合を検討したいと思います。
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
手順4はc:/Users/yufukushima/.vscode/workspace/以下に.latexmkrcテキストファイルを作成するということですか。
また、かなり前に.latexmkrcと名付けたテキストファイルがc:/Users/yufukushima/以下にあり、4-2)のコマンド実行後それに関するメッセージが表示されるのですがそちらのファイルは削除したほうがよいでしょうか。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿
zip ファイルの内容物に .pdf が含まれていないということは、うまくいっていないのですね。

私の指示ミス&不足ではありますが、
platex report のログは、report.log に書き込まれるのですが、
latexmk 自身や dvipdfmx の出力はコンソールに出力されるだけでしたね。
この出力には latexmk が .latexmkrc をどこから読み込んでいるとか、
pdf 作成時の情報が含まれています。
ですので「手順4」を実行したとき表示される情報をコピペでテキストファイルに作成し
アップロードしてください。

「かなり前に.latexmkrcと名付けたテキストファイルがc:/Users/yufukushima/以下に云々」に関しては
ちょっと??なところがありますが、現時点で c:/Users/yufukushima/.latexmkrc があるのであれば。
それもアップロードしてください。

なお、添付ファイル fukushima.zip には .latexmkrc.pl というファイルはありますが
調べた限り latexmk は起動時にこのファイルは読み込まないと思います。
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
福島 優 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
ユーザーyufukushima以下にある.latexmkrc.txtというものです。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿
latexmk はホームとカレントディレクトリに .latexmkrc というファイルがあれば読み込みます。
ですので .latexmkrc.txt は読み込まれません。
気になるのであれば、削除などしてください。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿

あら!! .pdf ファイルできていますね。
でも不適切な設定&未解決問題もありますが、メッセージの内容を解説します。

>  c:\Users\yufukushima\.vscode\workspace>latexmk -pdfdvi -latex=platex report.tex
>Initial Win CP for (console input, console output, system): (CP932, CP932, CP932)
>I changed them all to CP932

上記は問題無し

>Latexmk: I have found a DIRECTORY named "C:/Users/yufukushima/.latexmkrc".
>  Have you perhaps misunderstood latexmk's documentation?
>  This name is normally used for a latexmk configuration (rc) file,
>  and in that case it should be a regular text file, not a directory.

ホームディレクトリに .latexmkrc という「ディレクトリ」があるけれど
読み込むのは同名の「テキストファイル」です。

とりあえずは、削除ないし別名保存してください。

>Rc files read:
>  .latexmkrc

.latexmkrc はカレントだけ読み込みました。

>Latexmk: This is Latexmk, John Collins, 4 Apr. 2023. Version 4.80.
>Latexmk: Nothing to do for 'report.tex'.
>Latexmk: All targets (report.pdf) are up-to-date

report.pdf が存在していて report.tex より新しいので「何もすることはない」でOK.
なので、昨夜から本日午前中までのどこかで pdf 作成できていますね。
いつ pdf が作成できるようになったのかな?

通常はここまでで終了なのですが、何故か以下のエラーが発生していますね

>Collected error summary (may duplicate other messages):
>  dvipdf: gave an error in previous invocation of latexmk.

「may duplicate other messages」とのこと、
昨夜アップしていただいた fukushima.zip の内容を使って
report.tex や .latexmkrc を同じものを使うように、
さらに念の為ホームディレクトリに .latexmkrc というディレクトリを作成してみましたが、
福島さんのようにエラーにはなりません。

ところで、fukushima.zip に含まれているファイルの書き換え時刻を見ると

  1) .latexmkrc が report.aux などの生成ファイルより新しくなっているのが気になります。
  2)  platex16900.fls platex25700.fls はどうやって作られるのかしら?もしかしたら 1) と関係する?

          Date      Time    Attr        Size  Compressed  Name
      ------------------- ----- ------------ ------------  ------------------------
      2023-07-03 23:17:44 ....A          85          60  .latexmkrc
      2023-06-21 00:28:22 ....A          450          189  .latexmkrc.pl
      2023-06-23 00:36:44 ....A          72          61  .vscode/extensions.json
      2023-06-29 21:07:46 ....A          939          316  .vscode/settings.json
      ... 省略 ...
      2023-07-03 23:09:34 ....A          197          118  platex16900.fls
      2023-07-03 23:09:36 ....A          197          118  platex25700.fls
      2023-07-03 23:09:36 ....A          32          32  report.aux
      2023-07-03 23:09:36 ....A          456          270  report.dvi
      2023-07-03 23:09:36 ....A        6348        1885  report.fdb_latexmk
      2023-07-03 23:09:36 ....A        11437          694  report.fls
      2023-07-03 23:09:36 ....A        9272        2576  report.log
      2023-06-29 22:06:42 ....A          249          172  report.tex
      2023-06-21 00:34:34 ....A          125          112  Untitled-1.tex

>Latexmk: If appropriate, the -f option can be used to get latexmk
>  to try to force complete processing.
>C:\texlive\2023\bin\windows\runscript.tlu:921: command failed with exit code 12:
>perl.exe c:\texlive\2023\texmf-dist\scripts\latexmk\latexmk.pl -pdfdvi -latex=platex report.tex

最後のエラーの原因を掴みたいので以下の作業をコマンドプロンプトで行い、
表示されたものをコピペでテキストファイルに書き込んだものをアップしてください。
(なお「削除」という言葉を使いますが、必要であれば別ディレクトリ作成し、そこへ移動でも良いです)

 1)ホームディレクトリの .latexmkrc ディレクトリを削除
 2)c:/Users/yufukushima/.vscode/workspace は .latexmkrc と report.tex 以外は削除してください。
   c:/Users/yufukushima/.vscode/workspace/.vscode ディレクトリも削除してください。

   ここまでは GUI 操作で構いません。

 3)1)2)の作業ダブルチェック

        dir c:/Users/yufukushima
        dir c:/Users/yufukushima/.vscode/workspace

 4)c:/Users/yufukushima/.vscode/workspace へ移動

        cd c:/Users/yufukushima/.vscode/workspace

 5)latexmk を実行

        latexmk -latex=platex report

 6)作成されたファイル日付の確認

        dir

 7)3)から6)の作業で表示された内容をコピーぺで 
   c:/Users/yufukushima/.vscode/workspace に
   2023-07-04.txt というファイル名で書き込んでください。

 8)c:/Users/yufukushima/.vscode/workspace を zip で固めてアップロードしてください。

なお、今回の確認作業結果が、昨夜および今朝の状況と変わらないのであれば
TeXLive 2023 の再インストールをお願いするかもしレません。
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 若松 久仁光 の投稿
Windows 11でVSCode platex
和田様 いつも詳細な検証と説明を載せて頂き
有難う御座います。
TeXからPDF迄の仕組みを、学ばせてもらいました。

さて、Windows11勉強の為、敢えて追試してみました。
同一環境では有りませんが、
Mac OS11.7.8 Big Sur Parallels Desktop 18にインストールした
Windows11 Pro (build22000.2124), VSCode(ver.1.79.2) TeXLive 2022 で
ホームディレクトリやカレントディレクトリに .latexmkrc が存在しない環境です。

LaTeX Workshopのsettings.jsonを生のまま使ってWindows11でコンパイルを実行すると
此のフォーラムでの和田様のご指摘のようなエラー表示が出ます。
MacそのもののVSCode (ver.1.79.2)では和田様の2023年6月24日の投稿記事の
「"-latex=platex", ←この行を追加!!」をsettings.jsonに追記するだけで、
コンパイルは機能しました。(普段はluaLaTeX使いの為)

今回のWindow11環境でLatex-workshop > settings.jsonには
追記01:
Visual Studio Code/LaTeX - TeX Wiki の「recipe/tool を日本語文書用に設定」から

{
"name": "latexmk",
"command": "latexmk",
"args": [
"-e",
"$latex=q/platex %O -kanji=utf8 -no-guess-input-enc -synctex=1 -interaction=nonstopmode -file-line-error %S/",
"-e",
"$bibtex=q/upbibtex %O %B/",
"-e",
"$biber=q/biber %O --bblencoding=utf8 -u -U --output_safechars %B/",
"-e",
"$makeindex=q/upmendex %O -o %D %S/",
"-e",
"$dvipdf=q/dvipdfmx %O -o %D %S/",
"-norc",
"-gg",
"-pdfdvi",
"%DOC%"
]
}
の部分を「"latex-workshop.latex.tools": [」の先頭に追記。
一箇所『$latex=q/uplatex』のuplatexだけを『platex』に変更しました。
追記02:
Latex-workshop > Kpsewhich: Enabled ✔︎を入れました。
(SublimeText 3のLaTeX設定の際、叱られた事を思い出した為)

此れでコンパイルを実行したら、無事PDFでの画像ができました。

付記 : 使用した「report.tex」初期ファイルには、
サイトマップ - TeX Wiki の「簡単な数式を含む」から記事の中から

————引用始め
日本で漱石が「吾輩は猫である」を発表したころ,
ドイツではAlbert Einsteinが特殊相対論を発表した。

この理論によれば,エネルギー$E$と質量$m$は
\begin{equation}
E = mc^{2}
\end{equation}
で関係づけられる。
ここに$c$は光速で,
\begin{equation}
c = 299{,}792{,}458 \, \mathrm{m/s}
\end{equation}
である。
――――引用終わり
この迄を追加して、追試の実験をいたしました。

Window11は立ち上がる迄5分かかるので、Debian12一本に
しようか?とも考えていますが、以上、
VSCode実験結果のご報告まで。若松久仁光拝

追伸
TeXLive2023をisoから導入する前にVSCodeだけの問題を
理解したかったので、あえて既存のTeXLive2022を使用しました。
VSCodeでは、先づ「Clean up auxiliary files」を走らせてから
コンパイルの実行をしておりました。
追伸2
c:/Users/xxx/.vscode/workspace に福島さんの「書き込み書類」を
隠しファイル扱いで配置しておられますが?
どの様な『利点が有る』のでしょうか?
お教えいただければ幸甚です。
添付 Window s 11-VSCode Export.png
若松 久仁光 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿

今回の問い合わせ対応で反省していること

当初、vscode での設定ということで話を続けてきましたが ... ホームディレクトリに .latexmkrc を最初から設置するようにした方が良かったと思っています。

vscode で LaTeX Workshop extentionpdflatex 以外、特に platex / uplatex でビルドするならデフォルトで用意されている latexmk(.latexmkrc) を使うようにホームディレクトリに.latexmkrc を設置した方が初心者にはわかりやすいかなと思い始めています。

この方法であれば、コンソールで latexmk hoge と同じことが vscode のビルドメニュで latexmk(.latexmkrc) を選ぶだけですので。

ただ、この選択動作が面倒であればレシピの順序を変えるか、 latexmk(.latexmkrc) 以外を削除すれば良いのだと思う。

その2

vscode を初め統合ツール環境はそれなりに便利だ。

でも動かなくなった時、あたふたとならないように、

1. (u)platex / dvpdfmx で pdf ができるか
2. latexmk で pdf が作成できるか
3. そして vscode での確認

の順序で確認して欲しく記述したつもりであったが、話の流れから逆になってしまった。

若松さんの書き込みへのフォロー

Window11は立ち上がる迄5分かかる ...

それかかりすぎですね。ホストOS でCPUぶん回し状態ですが、類似環境の VMware で 2 分弱。流石にホストでCPUぶん回しだと windows での操作はできないのでとホスト側の処理は中断します。

VSCodeでは、先づ「Clean up auxiliary files」

この機能はどうやら latexmk -c hoge として起動されるので .pdf や .dvi は削除されないようです。それらも削除したい場合は latexmk -C hoge と大文字オプションを利用してください

"latex-workshop.latex.tools" には以下のようなatexmk-C を用意しておいて、"latex-workshop.latex.recipes"のご利用の latexmk エントリの最初で起動するようにすれば良いと思います。

       {
            "name": "latexmk-C",
            "command": "latexmk",
            "args": [
                "-C",
                "%DOC%"
            ],
            "env": {}
        },

「書き込み書類」を隠しファイル扱いで配置について

利点があるか否かは不明です。設定作業していてたまたまそこになってしまったのかもしれません。

個人的にはホーム/Documentsホーム/Desktop にしますね。

和田 勇 への返信

Re: VScodeでのコンパイルができません

- 若松 久仁光 の投稿
和田様 いつも丁寧な説明を頂き有難う御座います。
今後、VSCodeでLaTeXを使用する事は余り無いとは思いますが、
今回お教えいただいたClean up auxiliary filesでの
「latexmk -C hoge と大文字オプション」の仕方を
"latex-workshop.latex.recipes”に書き込んで利用したいと
思っております。
(他のLaTeX用アプリでは、いつも「手動にて削除」実行です。)

脱線してしまいますが
和田様のVMWareは何の様なMac OS環境下でお使いなのでしょうか?
Parallels Desktop が起動に5分掛かるにに対し、
( かなりの昔にはVMWare Fusion 2を使用していました。
途中ver.3からParallels Desktop for Macへ移行しています。)
VMWare等についての情報はプラーベートメッセージの方へ
回答頂ければ幸甚です。若松久仁光拝
P.S
メールはお手数でなければyahoo.co.jp 宛でもOKです。
若松 久仁光 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿
vmware は 2017 に購入した iMacPro で。
AMD なのでもはや「お」「そ」「い」ので使用頻度は下がり気味です。

さらに話題はそれますが ...

時々、音声認識で文字起こし(→自動で字幕情報も作成)作業をしてるけど、
iMac ではなく専ら M1 Max な macbookpro  で作業。
時間がかかるモードで作業しているので、
長時間、高負荷 (cpu 300-350%) をかけ続けますが
2本並行作業してもなんともないです。
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 若松 久仁光 の投稿
和田様
色々情報有難う御座います。
2008年にVMware Fusion 2 を購入して以降触っていませんので
多少の不安がありますがVMware Fusion 13が手に入ったので
此方でLaTeX環境の体験をWindows 11 & VSCodeなど使用して
再挑戦をしようと考えています。
現在はMac Mini 2014、Mac OS11.7.8 Big Sur で
Spacemacs 28.2からLaTeX, org-roam等を一本化して
実行中です。若松久仁光拝
追伸
Parallels Desktop 18 のDebian でDoom Emacsから
LaTeX, org-roam,org—roam-uiなどで文書の統一の
実験を試みております。
若松 久仁光 への返信

Re: VScodeでのコンパイルができません

- 若松 久仁光 の投稿
和田 勇様
VMware Fusion 13.0.2にWindows11をインストールしました。
Windowsの起動は2分弱で起動するとの事でしたが、本当に
2分少しで立ち上がってくれるのには脱帽です。
(Parallels Desktop18では、Debian12のみを使うか?)
Windows 11からのTeXLive2023.isoの接続が未だ上手く行っていないので
Emacs 28.2でのLaTeXの確認は来週に持ち越しです。
VMware Fusion でのインストールの際に、Windows11での設定を
細かく入力させられるのには少々疲れましたが。
Parallels では単にインストール手続きが
終わるのを待つだけでしたが?
VMware Fusionともう少し付き合っていけば慣れる事と
思うのですが?果たしてどうなるのか?
取り急ぎ、途中のご報告まで。若松久仁光拝
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
返信遅くなりました。作業結果を添付します。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿

ありがとうございました。

私の指示したファイル等のパス区切り文字を「\」値すべきを「/」としていため二箇所ほど「無効なスイッチです - "Users"」となっていましたが、全体を見ると問題は無いようです。

つまり larexmkk -latex=platex report で .pdf を作成できますので、TeXLive の再インストール作業は不要だと判断しています。

ですので、次は vscodeの設定の見直しですが、現状で再テストしてみましょう。

なお、これ以降指示がなければ report.tex .latexmkrc 及び vscode の settings.json は変更しないでください。

再テスト手順概要

  1. ビルドしたい report.tex のあるディレクトリに移動
  2. .tex 以外を以下のコマンドで削除

    latexmk -C report

  3. vscode を再起動 & ビルドしたい report.tex を開く

    code report.tex

    必要であれば信頼 設定を行う

  4. ビルド

上記作業がうまくいかなければ ...

  • 出力タブに表示されたもの
  • 警告ダイアログが表示されたらそのスクリーンショット及びログ等へのリンクがあればそれをクリックして表示されたもの
  • settings.json
  • その他、疑問に思うようなことをコピペやスクリーンショットなど適宜利用して情報を提供してください。
和田 勇 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
手順通りに行い、ビルドとPDFを見るところまでできました。

今更になってしまったのですが、texlive2023をインストールした時の状況を書かせていただきます。
まず、もともと使用していたデスクトップのユーザー名が全角か何だかが原因でtexliveをインストールすることができませんでした。(インストールできない原因を調べた結果、もしかするとと思ったので実際それが原因かはわかりません)そこで新しいデスクトップを作ったのがユーザーのyufukushimaになります。その環境でVScodeをインストールしようとすると管理者権限のようなものが出てきてしまい、もしかすると正常にダウンロードできていなかったのではないかと思っているのですがどうでしょうか。

今Vscodeを再ダウンロードして手順を実行しました。
添付 reportpdf.png
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿

>手順通りに行い、ビルドとPDFを見るところまでできました

なぜ、今まで上手くいかなかったのか、いまだに解せないのですが、とりあえず、ほっとしました。

さて、.latexmkrc をどこに置くかという問題が残っています。

福島さんが今後作成する latex ドキュメントが platex をベースとするなら、今回検証用に作成したカレントの .latexmkrc をホームディレクトリに移動した方が良いでしょう。

もしuplatex を使う必要が発生したら、そのディレクトリに  $latex = 'uplatex'; を書き込んだ .latexmkrc を作成してください。

> texlive2023をインストールした時の状況

1) NON-ascii ユーザでの TeXLive は現時点では非推奨です

現時点では、ユーザ名は英数字やハイフン、下線で構成されるものが良いようです。

インストールに失敗する主な原因は、標準的な日本語 Windows のファイル名は CP932(Shift_JIS)になっているために、ファイルパスを正しく認識できないためです。

回避方法もありますが、インストール後に利用するツールによっては、別の障害を誘発することがあります。

2) vscode をインストールしようとすると管理者権限が ...

VScode のダウンロードページを見ると「User Installer」と「System Installer」があるようですが、後者を利用されたのでは?


Happy Hacking TeXLive!!

和田 勇 への返信

Re: VScodeでのコンパイルができません

- 福島 優 の投稿
その後report.texを書き換えてビルドしたところ新しいPDFが生成されなかったのですが、VScodeを再起動した後いじってみるととてもスムーズにPDFが見れるようになりました。もう少しこのまま操作してみようと思います。
福島 優 への返信

Re: VScodeでのコンパイルができません

- 和田 勇 の投稿

.texを更新してもPDFが更新されない件

もしかしたら、report.tex のウィンドウがアクティブになっていなかったのでは?と思います。

今回の検証中、私も時々経験しましたが、 出力のタブで LaTeX workshop の動きを見ていると 大抵 root ファイル(今回の場合 report.tex)が見つけられないとのメッセージが出ていました。

対処は、report.texタブをクリックするなどしてアクティブ状態にしてビルドしてあげると .pdf は再作成されました