1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

image.png


画像出典: NASA HEASoft

はじめに

Appleは2020年からMacにApple Siliconチップ(通称、M系チップ)を導入しました。この新しいアーキテクチャに伴い、NASAのHEASoftのインストール手順にも変更がありました。そこで本記事では、Mac Silicon版でのHEASoftをソースコードからインストールする方法を詳しく紹介します。

HEASoftについて詳しく知りたい方は、こちらの記事もぜひご覧ください。

基本的に、HEASoftの公式ページに従ってインストールし、コンパイルし、パスを通せば問題なく動作します。ただし、Silicon版Mac特有のコンパイル時に発生する問題がありますので、この記事ではその部分を重点的に説明します。

Apple Silicon版のOSのバージョンを確認

HEASoftをソースコードからインストールする際、Apple Silicon版かIntel版か、そしてOSのバージョンによっても手順が異なるため、それらを確実に確認しておくことが重要です。

Appleの公式サイトで「この Mac について」の「プロセッサ」という項目から確認します。

この時点で「チップ」がIntel版の場合、この記事の方法と異なるため他の記事を参照してください。

HEASoftコンパイル時の筆者の環境は以下の通りです。

  • チップ:M1
  • macOS:14.5

HEASoftのダウンロード

HEASoftの公式サイトに沿ってファイルをダウンロードします。

STEP 1 - ソフトウェアの種類を選択

公式サイトの「STEP 1 - Select the type of software」で、「Source Code」から対応するMacOSのソースコードを選択します。

STEP 2 - 必要なパッケージをダウンロード

必要なパッケージを選択します。不明な場合は「All」を選択して問題ありません。

ダウンロードには数時間程度かかる場合があります。安定した回線で試すことをお勧めします。

下準備

ダウンロードの待ち時間に、HeASoft公式サイトに従って必要なモジュールをインストールしておきましょう。

X11のインストール

XQuartzをインストールします。

Xcodeのインストール

コンパイル時に必要なツールをインストールします。以下のコマンドでインストールを実行します。

$ xcode-select --install

Silicon版Homebrewでのコンパイルに必要なインストール

MacはHomebrewでのバッケージ管理が便利ですが、Rosetta 2を介して使用可能なintell版のbrewと干渉することがあります。まずはどちらが有効になっているかコマンドのパスから確認します。

$ which brew

出力結果が/opt/homebrew/bin/brew(Silicon版)か/usr/local/bin/brew(Intel版)であることを確認します。Silicon版brewが有効であることを確認しましょう。以下の記事が参考になります。

gfortranとlibpngのインストール

Silicon版brewを使用して以下をインストールします。

$ brew install gcc@12
$ brew install libpng

Pythonのインストール

Silicon版のAnacondaをインストールします。

Sillicon版のAnacondaを必ず入れてください。Intell版のPythonは、コンパイル./configre時に、

configure: WARNING: arm64 build requires an arm64 Python
configure: error: Please choose an arm64-compatible Python

というエラーが出るので注意してください。

Sillicon版かIntell版かの確認方法

Anacondaの任意の環境にactivateした状態で、以下を実行してください。

$ python -c "import platform; print(platform.platform())"
出力結果
macOS-14.5-arm64-arm-64bit
あるいは
macOS-14.5-x86_64-i386-64bit

と出ると思います。もし、macOS-14.5-x86_64-i386-64bitである場合は、Sillicon版のAnacondaをインストールする必要があります。

公式からMac Sillicon版の最新のバージョンをインストールし実行します。

$ wget https://repo.anaconda.com/archive/Anaconda3-2024.06-1-MacOSX-arm64.sh
$ bash Anaconda3-2024.06-1-MacOSX-arm64.sh
出力結果
(中略)
Do you accept the license terms? [yes|no]
>>> yes

Anaconda3 will now be installed into this location:
/Users/b4_1/anaconda3

  - Press ENTER to confirm the location
  - Press CTRL-C to abort the installation
  - Or specify a different location below

[/Users/path/anaconda3] >>> /Users/path/anaconda3_arm64
PREFIX=/Users/path/anaconda3_arm64

のように、作成場所を指定してあげると既存の環境を削除することなく、Sillicon版の環境を作成することができます。

インストール後、HEASoftに必要なPythonモジュールをインストールします。

$ conda install astropy numpy scipy matplotlib pip

ファイルの展開

HEASoftのソースコードダウンロード後、以下のコマンドで解凍します。

$ tar zxf heasoft-modelsrc.tar.gz

解凍後、heasoft-modelsrc/BUILD_DIRに移動します。

コンパイル

コンパイラなどのパスを設定します。環境変数はご自身のMacの環境により異なるため、ここで書かれていることをそのまま試すのではなく、実際にパスが存在するか確かめるようにしてください

筆者の環境では、次のように設定しています。

$ export CC=/usr/bin/clang
$ export CXX=/usr/bin/clang++
$ export PERL=/usr/bin/perl
$ export FC=/opt/homebrew/bin/gfortran-12
$ export PYTHON=$HOME/anaconda3_arm64/bin/python

configureします。

$ ./configure --with-png=/opt/homebrew > config.txt 2>&1 

エラーがなければ、ビルドします。(20分くらいかかります。)

$ make > build.txt 2>&1

ビルドが成功したら、インストールします。

$ make install > install.txt 2>&1

この一連の作業が成功するとheasoft-modelsrc/aarch64-apple-darwin-versionという名前のディレクトリが作成されます。

パスを通す

~/.zshrcにHEASoftのパスを追加します。

~/.zshrc内に追記
export HEADAS=/path/to/your/installed/heasoft-modelsrc/aarch64-apple-darwin-version
alias heainit="source $HEADAS/headas-init.sh"
source $HEADAS/headas-init.sh

~/.zshrcのファイル内容を反映するため、ターミナル上で

$ source ~/.zshrc

を実行します。

動作確認

お疲れ様でした。これで、HEASoftが使える環境整備ができたと思います、一応、ターミナルで以下のコマンドを実行し、

$ fhelp ftools
$ xspec

動くことを確認します。

まとめ

本記事では、Mac Silicon版でのHEASoftのインストール手順を解説しました。以下にポイントをまとめます。

  1. 環境確認

    • Apple SiliconかIntelか、チップとOSバージョンを確認します。
  2. 必要なツールのインストール

    • Xcode、XQuartz、Homebrew、Pythonなど、コンパイルに必要なツールを準備します。
  3. HEASoftのダウンロードと展開

    • 公式サイトからソースコードをダウンロードし、適切なディレクトリに展開します。
  4. コンパイルとインストール

    • 環境変数を設定し、./configuremakemake installコマンドでビルドとインストールを行います。
  5. パスの設定

    • ~/.zshrcにHEASoftのパスを追加し、環境変数を設定します。
  6. 動作確認

    • fhelp ftoolsxspecコマンドでHEASoftが正しく動作することを確認します。

以上の手順で、Mac SiliconでもHEASoftをインストールして利用できます。本記事がインストールの参考になれば幸いです。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?