VScodeでlatexの環境構築を試みています。
OSはWindows 11 Proです。
こちらの記事を参考に環境構築を試みたのですが、コンパイルがうまくできません。aux、logなどの一切のファイルが作成すらされません。
https://qiita.com/rainbartown/items/d7718f12d71e688f3573
エラーメッセージを調べてみても該当する物は見つけることができませんでした。
エラー出力
Cannot write file 'out/test.aux'
Initial Win CP for (console input, console output, system): (CP932, CP932, CP932)
I changed them all to CP932
Rc files read:
C:/Users/gene-/.latexmkrc
C:\texlive\2022\bin\win32\runscript.tlu:915: command failed with exit code 2:
perl.exe c:\texlive\2022\texmf-dist\scripts\latexmk\latexmk.pl -silent -outdir=out c:/Users/gene-/Documents/Latex/test
ソースコード
\documentclass[dvipdfmx]{jsarticle}
\begin{document}
\title{VSCode で \LaTeX}
\author{ame}
\date{\today}
\maketitle
\section{\LaTeX をインストール}
あいうえおかきくけこさしすせそ\\
\section{ \LaTeX を覚えよう}
\end{document}
和田様、回答ありがとうございます。
setting.jsonにより「out」ディレクトリは自動生成されるようで、「out」ディレクトリは確認できますがコンパイルに失敗してしまいます。
setting.jsonと.latexmkrcを添付いたします。(.latexmkrcは別の返信にてお送りします。)
確認して頂ければ幸いです。
setting.jsonにより「out」ディレクトリは自動生成されるようで、「out」ディレクトリは確認できますがコンパイルに失敗してしまいます。
setting.jsonと.latexmkrcを添付いたします。(.latexmkrcは別の返信にてお送りします。)
確認して頂ければ幸いです。
macOS で提供された settings.json ~/.latexmkrc に置き換え、サンプルソースで試したところ問題はありませんでした。
以下の情報を提供してください
- .log ファイル
「 c:/Users/gene-/Documents/Latex」の「test.tex」をビルドしているようなので
vscode でエラーになった test.log をウップロードしてください。
- コマンドプロンプトで latexmk test がそもそも通るか
コマンドプロンプトで「c:/Users/gene-/Documents/Latex」に移動して以下のコマンドを実行したときの test.log
もほしいです。
latexmk test
- TeXLive は最近インストールしたのでしょうか?
- そのインストールログは C:\texlive\2022\install-tl.log なのですが、そのログも見せてほしいです。
PS 複数ファイルになる場合は zip などでアーカイブ圧縮して構いません。
以下の情報を提供してください
- .log ファイル
「 c:/Users/gene-/Documents/Latex」の「test.tex」をビルドしているようなので
vscode でエラーになった test.log をウップロードしてください。
- コマンドプロンプトで latexmk test がそもそも通るか
コマンドプロンプトで「c:/Users/gene-/Documents/Latex」に移動して以下のコマンドを実行したときの test.log
もほしいです。
latexmk test
- TeXLive は最近インストールしたのでしょうか?
- そのインストールログは C:\texlive\2022\install-tl.log なのですが、そのログも見せてほしいです。
PS 複数ファイルになる場合は zip などでアーカイブ圧縮して構いません。
ありがとうございます。
-logファイル
logファイルすら作成されないです。
-コマンド実行
latexmk testの実行結果は以下の通りです。
Initial Win CP for (console input, console output, system): (CP932, CP932, CP932)
I changed them all to CP932
Rc files read:
C:/Users/gene-/.latexmkrc
Latexmk: This is Latexmk, John Collins, 18 Nov. 2022. Version 4.78, version: 4.78.
Cannot write file 'test.aux'
C:\texlive\2022\bin\win32\runscript.tlu:915: command failed with exit code 2:
perl.exe c:\texlive\2022\texmf-dist\scripts\latexmk\latexmk.pl test
-TexLiveのインストール
10月ごろに一度インストールしました。しかし、最近アンインストールし再度インストールをし直しました。
C:\texlive\2022\install-tl.logを添付いたします。
よろしくお願いいたします。
-logファイル
logファイルすら作成されないです。
-コマンド実行
latexmk testの実行結果は以下の通りです。
Initial Win CP for (console input, console output, system): (CP932, CP932, CP932)
I changed them all to CP932
Rc files read:
C:/Users/gene-/.latexmkrc
Latexmk: This is Latexmk, John Collins, 18 Nov. 2022. Version 4.78, version: 4.78.
Cannot write file 'test.aux'
C:\texlive\2022\bin\win32\runscript.tlu:915: command failed with exit code 2:
perl.exe c:\texlive\2022\texmf-dist\scripts\latexmk\latexmk.pl test
-TexLiveのインストール
10月ごろに一度インストールしました。しかし、最近アンインストールし再度インストールをし直しました。
C:\texlive\2022\install-tl.logを添付いたします。
よろしくお願いいたします。
まだ、原因は特定できていません。
test.tex は vscode で書き込んだのですよね。 ですので vscode ではなく そのほかの texlive あるいは作業ディレクトリのアクセス権周りと推測しています。
いくつか、試していただきたいので、お手数ですが検証をお願いします。
注目点
-logファイル logファイルすら作成されないです。 ← .log が作成できていない -コマンド実行 latexmk testの実行結果は以下の通りです。 Initial Win CP for (console input, console output, system): (CP932, CP932, CP932) I changed them all to CP932 Rc files read: C:/Users/gene-/.latexmkrc Latexmk: This is Latexmk, John Collins, 18 Nov. 2022. Version 4.78, version: 4.78. Cannot write file 'test.aux' ← .aux が作成できない
以上から、単純に想像するに ...
- test.tex が置かれている場所の書き込み権がない
- perl または、platex の書き込みアクセス権がない
上記の検証方法
作業ディレクトリの書き込み権は以下のコマンド実行後、aaa の有無で確認可能
echo aaa > aaa
perl ... ここで対象となる perl は texlive 配布のものを使う
C:\texlive\2022\tlpkg\tlperl\bin\perl.exe c:\texlive\2022\texmf-dist\scripts\latexmk\latexmk.pl test
platex
platex test
他のディレクトリで検証してみる
上記でダメだったものを例えば「Desktop」に test.tex をコピーして検証してみる
ありがとうございます。
・作業ディレクトリの書き込み権
ubuntuにおけるコマンド実行結果です。
[1] 1602
/mnt/c/Users/gene-/Documents/Latex
gt: error: neither tool nor script specified; option -help lists possible tools
[1]+ 終了 echo /mnt/c/Users/gene-/Documents/Latex
-bash: /mnt/c/Users/gene-/Documents/Latex: ディレクトリです
・perl
同様のエラーでした。
Initial Win CP for (console input, console output, system): (CP932, CP932, CP932)
I changed them all to CP932
Rc files read:
C:\Users\gene-/.latexmkrc
Latexmk: This is Latexmk, John Collins, 18 Nov. 2022. Version 4.78, version: 4.78.
Cannot write file 'test.aux'
・platex
作業ディレクトリにてビルドができました。
test.aux、test.dvi、test.logが作成されました。(添付いたします。platex)
・他のディレクトリで検証(latexmk test を実行)
ソースコードをDesktopにコピーして実行した結果、ビルドできpdfまで作成されました。(添付いたします。desktop)
作業ディレクトリごとDocumentsからDesktopにコピーしてもできました。
DocumentsとDesktopで何か違いがあるのでしょうか
・作業ディレクトリの書き込み権
ubuntuにおけるコマンド実行結果です。
[1] 1602
/mnt/c/Users/gene-/Documents/Latex
gt: error: neither tool nor script specified; option -help lists possible tools
[1]+ 終了 echo /mnt/c/Users/gene-/Documents/Latex
-bash: /mnt/c/Users/gene-/Documents/Latex: ディレクトリです
・perl
同様のエラーでした。
Initial Win CP for (console input, console output, system): (CP932, CP932, CP932)
I changed them all to CP932
Rc files read:
C:\Users\gene-/.latexmkrc
Latexmk: This is Latexmk, John Collins, 18 Nov. 2022. Version 4.78, version: 4.78.
Cannot write file 'test.aux'
・platex
作業ディレクトリにてビルドができました。
test.aux、test.dvi、test.logが作成されました。(添付いたします。platex)
・他のディレクトリで検証(latexmk test を実行)
ソースコードをDesktopにコピーして実行した結果、ビルドできpdfまで作成されました。(添付いたします。desktop)
作業ディレクトリごとDocumentsからDesktopにコピーしてもできました。
DocumentsとDesktopで何か違いがあるのでしょうか
おっ WSL との連携かな (現役の頃ちょっと使ったけどこの辺の知識はあまりないので自信はないです)
前回の検証依頼は、「コマンドプロンプト」を想定してのものだったのですが、 どのような環境で検証されたのかしら?可能であればスクリーンショット見せていただけますか?
なお、ディレクトリによってアクセス権を制御するのは、昨今では普通に行われますので Desktop と Documents では異なっていてもおかしくありません。
-「platex」がOK とのことですが、 windows のコマンドで where platex とすると何が表示されます?
ビルドのできる状況
- ソースコードをDesktopにコピーして実行した結果はOK
- 作業ディレクトリごとDocumentsからDesktop
これから考えられるのは、Documents のアクセス権ですね。
適切な調査コマンド が出てこないので、「Windows ディレクトリ アクセス権」などで調べてください。
・WSLでのコマンド実行について
コマンドプロンプトでの実行結果は以下のようだったため、Ubuntuでの実行をしてみました。
echo C:\Users\gene-\Documents\Latex > C:\Users\gene-\Documents\Latex
C:\Users\gene-\Documents\Latex
'gt' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
・platex
platexはここにあるようです。
where platex
C:\texlive\2022\bin\win32\platex.exe
・アクセス権について
ディレクトリアクセス権について色々と調査してみようと思います。
コマンドプロンプトでの実行結果は以下のようだったため、Ubuntuでの実行をしてみました。
echo C:\Users\gene-\Documents\Latex > C:\Users\gene-\Documents\Latex
C:\Users\gene-\Documents\Latex
'gt' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
・platex
platexはここにあるようです。
where platex
C:\texlive\2022\bin\win32\platex.exe
・アクセス権について
ディレクトリアクセス権について色々と調査してみようと思います。
- 前回の報告でも「gt」がありましたが、どうやら私の投稿後の確認漏れのようですね。
- 2022年 12月 14日(水曜日) 20:00 に投稿した内容が「 echo aaa > aaa 」になっていました。
- 「 echo aaa > 出力ファイル 」のような方法でファイルが作成できるか試したかったのです。
- お手数ですが再確認です。
- texlive は WIndows のものを使用されたいのは理解しました。
- vscode は Windows 側? それとも ubuntu側?
- C:\Users\gene-\Documents\ 以下と ubuntu 側の関係は?
- これらの関係次第で、設定次第で書き込みができなくなることは考えられます。
- 2022年 12月 14日(水曜日) 20:00 に投稿した内容が「 echo aaa > aaa 」になっていました。
- 「 echo aaa > 出力ファイル 」のような方法でファイルが作成できるか試したかったのです。
- お手数ですが再確認です。
- texlive は WIndows のものを使用されたいのは理解しました。
- vscode は Windows 側? それとも ubuntu側?
- C:\Users\gene-\Documents\ 以下と ubuntu 側の関係は?
- これらの関係次第で、設定次第で書き込みができなくなることは考えられます。