😎

install mojo with pyenv on Mac OS

2023/10/29に公開

概要

MojoがApple Silicon Macについに対応し、多くの人が試していると思います。

この記事は、mojoインストール時に、以下のエラーメッセージが出てしまったpyenvユーザー向けの記事です。
注意) mojoのインストールは関連する部分のみ記載しています。

Exception: Could not find libpython. Check your Python installation and ensure that $LD_LIBRARY_PATH includes the location to the installed Python library (e.g. /usr/lib/x86_64-linux-gnu).
modular: error: failed to run python:

エラーの原因および対応

pyenvはlipython.aファイルのみを作成するため、共有ライブラリのlibpythonを見つけることができないことが原因です。

% pyenv install  3.10.2
% ls ~/.anyenv/envs/pyenv/versions/3.10.2/lib/
  libpython3.10.a	pkgconfig	python3.10

以下の環境変数を設定してpythonをインストールします。
dylibはMacOSの共有ライブラリの拡張子です。

% CONFIGURE_OPTS="--enable-shared" pyenv install  3.11.2
% ls ~/.anyenv/envs/pyenv/versions/3.11.2/lib/
libpython3.11.dylib	pkgconfig		python3.11

おそらく失敗していると思いますので、cleanします。
% modular clean

再度インストールします。
REPLが表示されればOKです。
Have fun!

LD_LIBRARY_PATHにバージョンを設定している件は、対応方法を検討中です。

LD_LIBRARY_PATH=~/.anyenv/envs/pyenv/versions/3.11.2/lib:${LD_LIBRARY_PATH}
% modular install mojo

[notice] A new release of pip available: 22.3.1 -> 23.3
[notice] To update, run: pip install --upgrade pip

🔥 Mojo installed! 🔥

Mojo's Python virtual environment created at /Users/unokun/.modular/pkg/packages.modular.com_mojo/venv

% mojo
Welcome to Mojo! 🔥

Expressions are delimited by a blank line.
Type `:quit` to exit the REPL and `:mojo help` for further assistance.

  1> :quit

Discussion