wxpython, vlc 등등 조합으로 gui 어플리케이션 만들고있음.
vlc 파이썬 라이브러리가 vlc 설치되있어야하고 여튼 좀 별로이긴 한데, ffmpeg 쓰는 라이브러리들 아니면 대부분 mp3, wav, ogg 지원이 끝이라서 일단 이거 쓰고있음.
물론 분명 좋은 대안이 있겟지만.
그런데 py2exe로 저거 빌드하니까 애러뜨고 로그 보라길레 확인해보니 대충 다음과 같은 애러였음.
AttributeError: function 'PyFile_FromFd' not found
ctypes 함수인거 같은데, ctypes모듈을 까보기엔 그만큼 실력이 안 되고, setup.py에 이런저런거 추가해가면서 고군분투중.
이건 setup.py임.
from distutils.core import setup
import py2exe
options = {
"bundle_files":1,
"compressed":1,
"optimize":2,
"includes": ["vlc", "ctypes"],
"dll_excludes": ["MSVCP90.dll", "mswsock.dll", "powrprof.dll", "libvlc.dll"],
"packages":["vlc"],
}
setup(windows=["application.py"], options={"py2exe": options}, zipfile=None)
아마 저거 해결하려고 이런저런거 붙였는데 저런거 붙이나 안 붙이나 똑같은 애러 발생함.
python3.10 쓰고있는데, 3.7로 내려서 해봐도 똑같은 애러임.
버전문제는 아니라는건데...검색해봐도 도무지 모르겠다.
심지어 chatgpt한테 물어봤는데 그리 좋은 결과를 얻지는 못 했음.
원래는 pyinstaller 쓰다가 이번에 py2exe로 바꾼거거든.
pyinstaller가 gui 앱 뿐만 아니라 콘솔 앱도 이런저런 애러때문에 빌드 잘 못 하는 경우가 많아서...
그래서 이거 어떻게 해결함? 이라는 글을 쓰려고 했지만, 글 작성 중 혹시나 하는 마음으로 pyinstaller 사용해보니 py2exe보다 용량은 큰 것 같지만 실행은 아주 잘 되는 것을 발견했음...
뭐지?
그래도 py2exe 사용해서 저거 해결하는 방법 없음?
잘 돌아가긴 하는데, py2exe 나름 괜찮은 것 같아서...