[python] cx_Freeze를 사용하여 파이썬 가상 환경을 실행 파일에 포함하는 방법

cx_Freeze Logo

파이썬으로 작성된 프로그램을 배포할 때, 사용자가 파이썬 가상 환경을 설치하지 않고도 실행 파일만으로 프로그램을 실행할 수 있다면 편리할 것입니다. 이를 가능하게 해주는 도구 중 하나가 cx_Freeze입니다. cx_Freeze는 파이썬 코드를 실행 파일로 변환해주는 패키지이며, 가상 환경을 포함하여 실행 파일을 생성할 수 있습니다.

아래는 cx_Freeze를 사용하여 파이썬 가상 환경을 실행 파일에 포함하는 방법에 대한 예제입니다.

1. cx_Freeze 설치

먼저, cx_Freeze를 설치해야 합니다. 아래의 명령을 사용하여 cx_Freeze를 설치할 수 있습니다.

pip install cx-Freeze

2. setup.py 파일 작성

다음으로, 가상 환경을 포함한 실행 파일을 생성하기 위해 setup.py 파일을 작성해야 합니다. 아래는 setup.py 파일의 예제입니다.

import sys
from cx_Freeze import setup, Executable

# 실행 파일에 포함할 모듈과 패키지를 추가합니다.
build_exe_options = {
    "packages": ["my_package"],
    "excludes": [],
    "include_files": ["my_virtual_environment"]
}

# 실행 파일에 대한 설정을 추가합니다.
exe = Executable(
    script="my_script.py",
    base="Console",
    targetName="my_executable"
)

# setup 함수를 호출하여 실행 파일을 빌드합니다.
setup(
    name="My Executable",
    version="1.0",
    description="My Description",
    options={
        "build_exe": build_exe_options
    },
    executables=[exe]
)

위 예제에서는 my_script.py라는 파이썬 스크립트 파일을 실행 파일로 변환하고, 이를 my_executable이라는 이름으로 저장합니다. 또한, my_package라는 모듈과 my_virtual_environment라는 가상 환경을 실행 파일에 포함합니다.

3. 실행 파일 생성

마지막으로, 아래의 명령을 사용하여 실행 파일을 생성할 수 있습니다.

python setup.py build

위 명령을 실행하면 build 디렉토리 아래에 실행 파일이 생성됩니다. 생성된 실행 파일은 가상 환경을 포함하여 독립적으로 실행할 수 있습니다.

이제 cx_Freeze를 사용하여 파이썬 가상 환경을 실행 파일에 포함하는 방법에 대해 알아보았습니다. cx_Freeze를 활용하면 사용자가 파이썬 가상 환경을 설치하지 않고도 프로그램을 쉽게 실행할 수 있으므로 배포 및 배포 파일 관리가 편리해집니다.