Big SurとESP32 "dlsym(RTLD_DEFAULT, kIOMasterPortDefault): symbol not found"

CatalinaからBig Surにアップデートした後、Arduino IDEを使ったESP32の制御ができなくなった話。

厳密には、コンパイルまではできるものの、以下のエラーで中断される。

dlsym(RTLD_DEFAULT, kIOMasterPortDefault): symbol not found

以下のページを参照しながら、この問題を改善するまでの過程を備忘録として残しておきたい。

github.com

以下にその手順を記す。

①pyserialパッケージがインストールされているかを確認する。

ターミナルを開いて、"python"、"import serial"の順にタイプする。

エラーが出た場合、pyserialをインストールする必要がある。

インストールには以下のページを参照した。

pyserial.readthedocs.io

PyPI経由の場合

python -m pip install pyserial

Condaの場合

conda install pyserial

or

conda install -c conda-forge pyserial

 

Arduino IDEを開き、"Arduino"タブより"Preferences"を開く。

③"Preferences"画面の左下の"/Uses/XXXX/Library/Arduino15/preferences.txt"をクリックし、Libararyフォルダを開く。

④"packages/esp32/hardware/esp32/1.X.X/platform.txt"を見つけ、開く。

⑤7行目の"tools.esptool_py.cmd=esptool"を"tools.esptool_py.cmd=esptool.py"に書き換え、保存して閉じる。

⑥"packages/esp32/hardware/esp32/1.X.X/tools"フォルダを開き、"esptool.py"をコピーし、"packages/esp32/tools/esp_tool_py/2.X.X"フォルダ内にペーストする。

Arduinoを終了する。

⑧ターミナルを開き、以下のコマンドから実行権限を付与する。

"chmod +x /Users/XXXX/Library/Arduino15/package/esp32/tools/esptool_py//2.X.X/esptool.py"

Arduino IDEを起動して動作を確認。

 

以上のステップでエラーの発生を止めることができた。

このページが困っている誰かの役に立てれば幸いです。