ポスドクとして雇われ始めた当初はコロナ禍真っ只中で通勤もままならず、オフィスではデスクトップPC派の自分がパソコンを買ってもらうまでに実に1年半も要してしまった。 ともあれ、今回買ってもらったものは Mac mini (2022) M1チップ搭載モデル、macOS 12 Monterey、16GBメモリ、512GB SSD。 これはその際の環境構築の自分用メモである。
2年前のM1 macの環境構築の際と比べて、ほとんどのアプリがデフォルトで M1 チップに対応するようになっている分、環境構築は非常に簡単だと感じた。
logicool製のキーボード・マウスを使用しているのでLogicool Optionsをインストール。
App Storeからインストールする。 その後、以下の通り Command Line tools をインストール。
xcode-select --install
インテルプロセッサー用のアプリを実行するためのエミュレーターである Rosetta 2。 今のところ必要な状況に直面していない。
公式サイトの言うとおり、
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
でインストールできる! 2年前の苦労が嘘のような簡単さ。
Homebrew で以下の通り
brew install root
してインストールできる v6.26/04 が問題なく動く。
今回は GUI 無しバージョンを Homebrew で入れてみた。
brew install mactex-no-gui --cask
brew install inkscape
そして設定を行う。
python のバージョン管理、および JupyterLab などを使うために Anaconda を導入している。 公式サイトにある通り、M1 チップ用の GUI 版のディストリビューションがあるのでそれをインストールする。問題なく動く。
ライセンスさえ手に入れれば問題なく動く。
ナイーブなオプション指定 -lgsl
が
ld: warning: ignoring file /usr/local/lib/libgsl.dylib, building for macOS-arm64 but attempting to link with file built for macOS-x86_64
エラーを吐いたので対応した。 MacAppStoreにある通り
brew install gsl
でライブラリをインストール。
Makefile
におけるオプション指定は
GSLFLAGS = $$(gsl-config --libs)
を用いるとラク。
brew install boost
でインストールした Boost c++ ライブラリも上記と同様のライブラリエラーで動かなかったので対応。
このリポジトリから必要なファイルを引っ張ってきてライブラリをコンパイルし直す。
cocoapods
が必要だが、
sudo gem install cocoapods
でインストールしたものはここにあるようなエラーを吐いたので、代わりに
brew install cocoapods
からの
git clone https://github.com/apotocki/boost-iosx
cd boost-iosx
scripts/build.sh
でFA。
Makefile
には
BOOSTFLAGS = -I/<path_to_boost-iosx>/boost -L/<path_to_boost-iosx>/boost/stage/macosx/lib
としておく。
環境構築のタイミングに乗じて VSCode を使い始めた。 公式サイトの Mac OS X 用インストーラーは M1 チップにも対応している。問題なく動く。