python to exe
아무래도 python 으로 프로그램을 짜기가 쉽다.
라이브러리가 많기도 하고...
윈도우 프로그램 개발할 일이 있었는데, c++ 로 개발하긴 귀찮아서 파이썬을 택했다.
(그냥 c++ 할걸 하는 후회도 약간 있긴 하지만 여튼.)
GUI 제작은 wxPython 을 사용하였고..
맥에서 주로 테스트를 하다가 윈도에서 한번씩 확인해보는 방식으로 개발하였다.
뒤늦게 알았는데, sys.platform 값을 darwin /win32 로 분기해서 구분하면 좀 더 편함.
마지막으로 만든 파이썬 스크립트를 배포용으로 만들 필요가 있었는데 여기서 애를 먹었다.
우선 난 Python 2.7.
처음에 py2exe 를 시도하였으나 안됨.
그 다음으로 cx_Freeze 를 사용하였는데 만들어지긴 하나 라이브러리 파일들이 덕지덕지 튀어나온다.
패커? 같은걸로 해보려 했으나 뭔가 잘 못찾겠어서 패쓰.
아래 문서의 도움을 잘 받았당
http://stackoverflow.com/questions/20754180/cx-freeze-bundling-files
그래서 그 다음으로 선택한게 PyInstaller.
처음 설정하기가 뭔가 좀 애먹었긴 한데 잘 된다.
단지, onefile 옵션을 주면 실행할 때 리소스를 임시폴더에 푼 다음 실행을 하는 것 같다.
프로그램 상에서 리소스를 불러올 때 resource_path 를 따로 계산해줘야 함.
http://stackoverflow.com/questions/7674790/bundling-data-files-with-pyinstaller-onefile
이 글을 참고하자.
(PyInstaller 기준) icon 파일은 .spec 파일에 기술했을 경우에 알아서 포함한다.
* 그런데... PyInstaller 는 만들고 난 결과 파일이 있는 경로에 한글이 섞여있으면 에러가 난다....ㅂㄷㅂㄷ....
Python 으로 exe 만들기 뭔가 험난하네....ㅠㅠㅠ