M1 Macで「fatal error: 'Python.h' file not found」が出たときの対処法

この記事の目次
chevron_right 事象
chevron_right 原因
chevron_right 解決方法
chevron_right 暴論
chevron_right 対処例
chevron_right パスを通す
chevron_right venvを作り直す

事象

M1 Macでpip install時に
fatal error: 'Python.h' file not foundというエラーが発生し、
ほしいライブラリが取り込めない

原因

M1 Macは Intell Macと違い、
brewのinstall pathがちょこちょこ違うためこのようなことが起こるらしい。

パスをちゃんと通してあげることによって、エラーが解消される。

解決方法

暴論

$ export CPLUS_INCLUDE_PATH=/path/to/dir

をしてあげたら動くよ

対処例

Python.hの存在確認

Python3.8の例です。
必要に応じてパス中のPythonのバージョンを書き換えてください。

$ ls -l /Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/Headers/ | grep Python.h

パスを通す

$ export CPLUS_INCLUDE_PATH=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/Headers/

パスが通ったかの確認

$ echo $CPLUS_INCLUDE_PATH

/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/Headers/が出力されればOK

venvを作り直す

venvを先に作ってしまっていたら、作り直しましょう。

$ python3 -m venv venv
[PR] おすすめの本
この記事を書いた人
Nな人(えぬなひと)。
Nは本名から取っています。
Laravelが大好きなPHPerで、WEBを作るときはLaravelを技術スタックに絶対推すマン。
PHP、Pythonと、昔はperlを書いていたP言語エンジニア。
最近はNimを書いたりしています。