diff --git a/.github/workflows/deploy_executables.yml b/.github/workflows/deploy_executables.yml index b4a9cf1..25ab236 100644 --- a/.github/workflows/deploy_executables.yml +++ b/.github/workflows/deploy_executables.yml @@ -68,17 +68,16 @@ jobs: echo "EXE_NAME=qgenie-ai.exe" >> $GITHUB_ENV fi - # 6. Nuitka를 사용해 파이썬 코드를 실행 파일로 만듭니다. - - name: Build executable with Nuitka - shell: bash - run: python -m nuitka --follow-imports --standalone --output-dir=dist --output-filename=${{ env.EXE_NAME }} src/main.py + # 6. PyInstaller를 사용해 파이썬 코드를 실행 파일로 만듭니다. + - name: Build executable with PyInstaller + run: pyinstaller --clean --onefile --name ${{ env.EXE_NAME }} src/main.py # 7. 빌드된 실행 파일을 다음 단계(deploy)에서 사용할 수 있도록 아티팩트로 업로드합니다. - name: Upload artifact uses: actions/upload-artifact@v4 with: name: executable-${{ runner.os }} - path: dist/${{ env.EXE_NAME }}.dist + path: dist/${{ env.EXE_NAME }} # 2단계: 빌드된 실행 파일들을 Front 레포지토리에 배포하는 잡 deploy: diff --git a/.gitignore b/.gitignore index 08a841b..5422313 100644 --- a/.gitignore +++ b/.gitignore @@ -9,8 +9,6 @@ *.spec build dist -main.build -main.dist # 4. 기타 .vscode diff --git a/README.md b/README.md index 50fd75d..e6c9c90 100644 --- a/README.md +++ b/README.md @@ -36,14 +36,10 @@ 4. **실행파일 생성 후 확인** ```bash # 이전 빌드 결과물 삭제 - rm -rf src/main.build src/main.dist src/main.onefile-build dist - rm -rf main.build main.dist main.onefile-build dist + rm -rf build dist - # 실행 파일 빌드-Nuitka (macOS/Linux) - nuitka --follow-imports --standalone --output-filename=qgenie-ai src/main.py - - # 실행 파일 빌드-Nuitka (Windows) - nuitka --follow-imports --standalone --output-filename=qgenie-ai.exe src/main.py + # 실행 파일 빌드 + pyinstaller --clean --onefile --name ai src/main.py ``` --- diff --git a/requirements.txt b/requirements.txt index 1c28978..892ea35 100644 --- a/requirements.txt +++ b/requirements.txt @@ -70,6 +70,8 @@ pydantic==2.11.7 pydantic-settings==2.10.1 pydantic_core==2.33.2 Pygments==2.19.2 +pyinstaller==6.14.2 +pyinstaller-hooks-contrib==2025.5 PyMySQL==1.1.1 python-dateutil==2.9.0.post0 python-dotenv==1.1.1 @@ -98,4 +100,3 @@ Werkzeug==3.1.3 xxhash==3.5.0 yarl==1.20.1 zstandard==0.23.0 -nuitka