본문 바로가기

IT

tk.h version (8.5) doesn't match libtk.a version (8.6) 에러 해결

오랜만에 파이썬 코드를 실행하는 중에 에러를 만났다.

tk.h version (8.5) doesn't match libtk.a version (8.6)

 

tk.h 버전이 맞지 않다는 말인데.

저는 맥을 사용하고 있고 brew 로 패키지 관리를 하고 있는데.

brew install tcl-tk 로 이전 패키지를 사용하고 있는데

pyenv install (python버전)

예> pyenv install 3.10.10 

명령어로 설치할 당시 tcl-tk버전이 8.5를 사용해서 컴파일 해서 두개의 버전이 맞지 않는 다는 말인 것 같다.

기존에 만들어진 virtualenv 말고 코어를 다시 설치해줘봤다.

pyenv install 3.10.10

python-build: use tcl-tk from homebrew 를 보니 8.6을 사용해서 새로 컴파일 하나 보다.

여전히 안된다.

 

그래서 아래와 같이 python 인스톨시 환경설정 옵션을 파라미터로 넘겨주고 설치했다.

PYTHON_CONFIGURE_OPTS="--with-tcltk-includes='$(pkg-config tk --cflags)' --with-tcltk-libs='$(pkg-config tk --libs)'" pyenv install 3.10.10

PYTHON_CONFIGURE_OPTS="--with-tcltk-includes='$(pkg-config tk --cflags)' --with-tcltk-libs='$(pkg-config tk --libs)'" pyenv install 3.10.10

 

❯ python                                                                 ─╯
Python 3.10.10 (main, May 25 2023, 23:54:35) [Clang 11.1.0 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import tkinter
>>> tkinter.TclVersion, tkinter.TkVersion
(8.6, 8.6)
>>>

이제 제대로 설치된것 같네요.

 

기억보단 기록을

 

오늘도 글 읽어 주셔서 감사합니다.

그럼 다음 시간에 만나요