はじめに
初めてLaTeXを使って執筆しています。
今回、ローカル環境でTeXからPDFを作成したいと思い、環境構築をしました。
様々な方が記録を残してくださっているので、それらを参考させていただきながら、
僕自身がつまずいたところをまとめました。
(更新:2022年07月06日)OSの更新と合わせて変更されたコマンド,忘れそうなところを追記しました.
環境(最新)
- MacOS(Monterey 12.4)
- Homebrew 3.5.4
当初,参考にさせていただいた文献
macOS Mojave に LaTeX 環境を作る
初心者がBasicTexをmacにインストールする(2019年)
macOS CatalinaでLaTeX環境整えた時のメモ(2019)
BasicTex
をインストール
Macでは、TeX Liveを使ってLaTeX文書を作成するのが良いようです。
そしてBasicTex
はLaTeX文書を作成するためのTeX Liveの最低限のものが用意されているサブセットらしいです。
では、BasicTex
をインストールしようと思います。(3分程度)
(注) 2022年時点ではcask
がコマンドからオプションになりました.
% brew install basictex --cask
うまくいきました。
次に、パッケージマネージャのtlmgr
を更新しておく必要があるようです。
$ sudo tlmgr update --self --all
ん、なんか引っかかった。
tlmgr: Local TeX Live (2019) is older than remote repository (2020).
Cross release updates are only supported with
update-tlmgr-latest(.sh/.exe) --update
See https://tug.org/texlive/upgrade.html for details.
どうやら、tlmgr
の更新がうまくいかなかったみたいです。
似たようなことで苦戦された方の記録を参考にしようと思い、調べてみました。
TeX Live2018から2019へのアップデート
TeX Live 2017 や 2018 を最新版の 2019 にアップグレードする。
tlmgr
を更新する(2020)
これらの記事を参考にしながら、tlmgr
を更新します。
まず、自分の環境がどうなっているか把握します。
$ ls -F /usr/local/texlive
2019basic/
BasicTex
のインストールにより,2019basicがインストールされたことがわかりました。
まず、このフォルダを複製して、2020を作ります。(tlmgr
以外はそのまま使うからです。)
$ cd /usr/local/texlive
texlive $ sudo cp -a 2019basic 2020
texlive $ ls -F /usr/local/texlive
2019basic/ 2020/
できました。次は、tlmgr
のパス情報を変更します。
パス情報が2019のままだと、更新したことにならないからです。(ここ大事!)
$ sudo tlmgr path remove
$ sudo /usr/local/texlive/2020/bin/x86_64-darwin/tlmgr path add
準備はできました。tlmgr
を更新します!
$ cd /usr/local/texlive/2020
2020 $ sudo curl -L http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh -O
確認してみる。
$ tlmgr version
tlmgr revision 54446 (2020-03-21 17:45:22 +0100)
tlmgr using installation: /usr/local/texlive/2020
TeX Live (https://tug.org/texlive) version 2020
無事、tlmgr
を更新できたみたいです(良かった...)。
これで環境構築の続きをやることができます。
追記:tlmgr
を更新する
(更新:2022年07月06日)
tlmgr
を使おうとすると,command not foundになりました.tlmgr
のパスを確認します.
$ tlmgr update --self --all
sudo: tlmgr: command not found
2022basic
では,Apple Sillicon対応のためuniversal-darwinになっているようです.そのため,パス自体に注意しながらtlmgr
のパスを追加します.
$ ls -F /usr/local/texlive
2022basic/
% sudo /usr/local/texlive/2022basic/bin/universal-darwin/tlmgr path add
Password:
% cd /usr/local/texlive/2022basic
2022basic % sudo curl -L http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh -O
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 342 100 342 0 0 438 0 --:--:-- --:--:-- --:--:-- 440
100 9414k 100 9414k 0 0 3694k 0 0:00:02 0:00:02 --:--:-- 6429k
インストールされているか確認する.
% tlmgr version
tlmgr revision 62273 (2022-02-28 09:52:17 +0100)
tlmgr using installation: /usr/local/texlive/2022basic
TeX Live (https://tug.org/texlive) version 2022
tlmgr
のパスが追加されたことが確認できましたので,再度実行します.
$ tlmgr update --self --all
tlmgr: package log updated: …
となり、更新できました。
以下の作業はこれまでの通りです。
LaTeX環境を構築する
latexmk
をインストール
latexmk
は、TeXからPDFを作成するときのやることを全てやってくれる便利パッケージです。
$ sudo tlmgr install latexmk
tlmgr: package repository http://ftp.jaist.ac.jp/pub/CTAN/systems/texlive/tlnet (not verified: gpg unavailable)
[1/2, ??:??/??:??] install: latexmk.x86_64-darwin [1k]
[2/2, 00:00/00:00] install: latexmk [92k]
running mktexlsr ...
done running mktexlsr.
tlmgr: package log updated: /usr/local/texlive/2020/texmf-var/web2c/tlmgr.log
日本語環境を構築するにあたって必要なパッケージをインストール
$ sudo tlmgr install collection-langjapanese
tlmgr: package repository http://ftp.yz.yamagata-u.ac.jp/pub/CTAN/systems/texlive/tlnet (not verified: gpg unavailable)
tlmgr install: package already present: collection-langjapanese
僕の環境にはすでにインストールされているようでした...w
(調べてみると、他にもいろいろなパッケージがあるみたいですね。)
ドキュメントサイズをA4に設定
$ sudo tlmgr paper a4
これで環境構築はできました。
tlmgr
経由で追加のリポジトリをインストールする
(更新:2022年07月06日)
basictex
は最低限必要なものが入っているものなので,足りないものはtlmgr
を使って自分で追加する必要があります.
% sudo tlmgr install <ライブラリ名>
インストール完了後,パス追加を行うことで使えるようになります.
tlmgr path add
参考:Basic Usage of tlmgr, the TEX Live Manager
おわりに
誰かの参考となればと思い、書きました。
この後はtex
ファイルからPDFが無事作成できれば問題はありません。
また、TeX文書の作成にはOverleafやCloud TeXといったクラウド環境を使って執筆を進めることも多く、使ってみましたが便利でした。特にOverleafは、執筆者が複数いるときに便利です。(複数アカウントを管理できます。)
お読みいただきありがとうございました。