[Python] nuitka로 실행 파일 만들기

[python] nuitka 설치

enter image description here

[Python] nuitka로 실행 파일 만들기

Python을 사용하면 배포가 불편하다는 엄청난(?) 단점이 있는데 그나마 유명한 TOOL이 이전 포스팅에서 적었던 Pyinstaller(https://maduinos.blogspot.com/2023/03/python.html) 였다.

Pyinstaller를 사용해보니 크리티컬한 문제가 하나 있었는데 하나의 파일로 묶어서 만들면 윈도우10에서 바이러스로 인식하는 문제가 있었다. 그래서 다른 Python 실행 파일 툴은 없나 했는데 nuitka 라는 툴이 있어서 간단히 사용법 적어 본다.

공식 홈페이지 : https://nuitka.net/pages/overview.html

  1. 우선 누잇카(?) 를 설치해준다
pip install nuitka
  1. 테스트 가능한 hello.py 만들어 줌
def talk(message):
    return "Talk " + message

def main():
    print(talk("Hello World"))

if __name__ == "__main__":
    main()
  1. hello.py 실행!
python hello.py
  1. 누잇카로 실행 파일 만들기
python -m nuitka hello.py

여기서 만약 MSVC 가 설치되어 있지 않다면 자동으로 설치하도록 해준다.

nuitka를 사용하면서 몇 가지 문제점이 있었는데

  • 마이크로소프트 스토어 에서 받은 python 패키지를 사용하면 자동설치되는 MSVC를 사용할 수 없다.
  • C로 변환하고 재컴파일 하다 보니 Pyinstaller 보다 시간이 더 오래 걸린다.
  • 시간은 시간대로 썼는데 실행 잘 안되면 빡친다(?)

지금까지 경험한 바로는 저정도 문제점이긴 한데 오히려 Pyinstaller 보다 좋은 점이 하나 있다. Pyinstaller로 패키징 한 경우 어떤방법으로던 리버싱하여 Python코드를 알아낼 수 있는 반면에 nuitka는 C로 변환한 후 다시 빌드하는 방식이라 리버싱이 불가능에 가깝다 라는 점이다.

패키징 하는데 너무 오래 걸려서 잘쓰지는 않을 것 같은데 라이브러리 패키징에 호환성만 좋다면 괜찮은 것 같다.

끝.

도움이 되셨다면 더 좋은 정보 공유를 위해 광고 클릭 부탁 드립니다 :)

댓글 쓰기

0 댓글