Big Sur로 하면, Arduino로 ESP32가 움직이지 않게 되었기 때문에 대응했다 (ValueError: dlsym(RTLD_DEFAULT, kIOMasterPortDefault): symbol not found Failed to execute script esptool)

소개



Big Sur가 되면 Arduino에서 ESP32가 움직이지 않게 되었다. 구누누.

환경



MacOS: Big Sur
Arduino: 1.8.13
ESP32: M5StickC

오류



이런 오류가 나온다.
Traceback (most recent call last):
  File "esptool.py", line 57, in <module>
  File "/Library/Python/2.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 389, in load_module
  File "serial/tools/list_ports.py", line 29, in <module>
  File "/Library/Python/2.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 389, in load_module
  File "serial/tools/list_ports_posix.py", line 31, in <module>
  File "/Library/Python/2.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 389, in load_module
  File "serial/tools/list_ports_osx.py", line 32, in <module>
ValueError: dlsym(RTLD_DEFAULT, kIOMasterPortDefault): symbol not found
Failed to execute script esptool
exit status 255
/Applications/Arduino.app/Contents/Java/arduino-builder returned 255
Error compiling for board M5Stick-C.



조사



여기 2개가 이 이슈에 대해 논의하고 있는 곳 같다.
벌써 해결해 그렇게.

MacOS Big Sur dlsym(RTLD_DEFAULT, kIOMasterPortDefault): symbol not found (ESPTOOL-82) · Issue #540 · espressif/esptool

esptool fails on MacOS Big Sur preview: Failure to import serial.tools.list_ports · Issue #509 · pyserial/pyserial

해결책



여기에, 그것 같은 해결 방법이 쓰여져 있기 때문에 위해 해 본다.

이 명령을 실행했습니다.
Python을 다시 넣고 esptool.py를 최신으로 가져 오고 있습니다.
~ ❯❯❯ sudo rm -rf /Library/Developer/CommandLineTools                      ✘ 1 
~ ❯❯❯ sudo xcode-select --install
~/L/A/p/e/tools ❯❯❯ brew install --build-from-source python            
~/L/A/p/e/tools ❯❯❯ cd ~/Library/Arduino15/packages/esp32/tools/esptool_py
~/L/A/p/e/tools ❯❯❯ mv esptool esptool.old                                
~/L/A/p/e/tools ❯❯❯ mv ~/Downloads/esptool.py ./                          
~/L/A/p/e/tools ❯❯❯ chmod + esptool                           


파이썬은 여기에 설치된 것 같습니다. 심볼릭 링크 같지만.
~/L/A/p/e/t/e/2.6.1 ❯❯❯ which python3
/usr/local/bin/python3
~/L/A/p/e/t/e/2.6.1 ❯❯❯ python3 --version
Python 3.9.0

esptool의 첫 번째 행을 다음과 같이 변경합니다.
#!/usr/local/bin/python3                                                        

확인



그래도 왠지 잘 안 됐다.
Arduino를 다시 시작하거나 Board를 다시 선택하여 컴파일을 여러 번 수행했습니다.
재현성이 있는지 수수께끼.

갈 때의 로그는 이런 느낌.
Sketch uses 214433 bytes (16%) of program storage space. Maximum is 1310720 bytes.
Global variables use 15436 bytes (4%) of dynamic memory, leaving 312244 bytes for local variables. Maximum is 327680 bytes.

Example을 써서 움직이는 것을 확인했다.
좋았어요.

결론



Big Sur로 해, 잠시 괜찮았지만, 트랩이 있었다.
글쎄, 해결하고 그렇게 좋았다.

추가



선인이 있었다.
파이썬 다시 넣지 않아서 좋았던 의혹 ···.

macOS Big Sur에서 Arduino IDE에서 ESP32를 쓸 수없는 문제 - Qiita

좋은 웹페이지 즐겨찾기