# Windows 설치본(msi) 만들기 — 팀원용 가이드 우리 팀 서버(20.200.170.37) 에 붙는 CodeAssist 앱을 Windows PC 에서 빌드하는 순서. 2026-09-22 기준, 앱 버전 0.1.4. 전부 PowerShell 에서 (Git Bash 는 Rust 링커가 꼬임 — 아래 "막히면"). ## 0. 한 번만 깔 것 | 뭐 | 어디서 | 확인 | |---|---|---| | Git | https://git-scm.com | `git --version` | | Node.js 22 LTS | https://nodejs.org | `node --version` → v22.x | | Rust (rustup, MSVC) | https://rustup.rs → `rustup-init.exe` 기본값으로 | `cargo --version` | | Visual Studio Build Tools | https://visualstudio.microsoft.com/visual-cpp-build-tools/ → **"C++ 데스크톱 개발"** 워크로드 체크 | Rust 가 링크할 때 필요 | | WebView2 런타임 | Win11 은 기본 있음. Win10 은 https://developer.microsoft.com/microsoft-edge/webview2/ | 없으면 앱 창이 안 뜸 | ## 1. 코드 받기 ```powershell git clone https://git.sqnotes.com/20260807_OPENCODE_TEMP/CODE_ASSISTANT.git cd CODE_ASSISTANT git pull # 이미 받아뒀으면 ``` ## 2. 서버 주소 넣기 (파일 하나) `2_frontend\.env.production` 파일을 **새로 만들고** 아래 한 줄만: ``` VITE_API_BASE_URL=http://20.200.170.37:8080/api/v1 ``` 이 파일은 git 에 안 올라감(PC 마다 다름). 고객사용을 만들 땐 이 주소만 고객사 서버로 바꿔서 빌드하면 됨. ## 3. 빌드 ```powershell cd 2_frontend npm ci cd ..\4_rust_tauri npm ci npx tauri build ``` 처음엔 Rust 크레이트 컴파일 때문에 10~15분. 두 번째부턴 1~2분. **결과물**: `4_rust_tauri\src-tauri\target\release\bundle\` - `msi\CodeAssist_0.1.4_x64_en-US.msi` ← 이걸 배포 - `nsis\CodeAssist_0.1.4_x64-setup.exe` (같은 내용, exe 설치본) ## 4. 설치하고 확인 1. msi 더블클릭 → 설치 → 트레이에 CodeAssist 아이콘. 2. 창 열리면 로그인: `admin@codeassist.local` / `test1234` (또는 `guest@codeassist.local` / 같은 비번). 3. 아무 질문이나 하나 보내서 답이 오면 끝. 핫키: | 키 | 뭐 | |---|---| | Ctrl+Alt+W | 챗 열기/숨기기 | | Ctrl+Alt+Q | 스니펫 팔레트 (Enter = 직전 앱에 붙여넣기) | | Ctrl+Alt+A | 맨 앞 창 통째 캡처 → 새 대화 | | Ctrl+Alt+S | 드래그 영역 캡처 → 새 대화 | | Ctrl+Alt+Z | 맨 앞 창 캡처 → 마지막 대화에 이어서 | | Ctrl+Alt+X | 드래그 영역 캡처 → 마지막 대화에 이어서 | ## 막히면 - **`link.exe` 어쩌고 하며 실패** → Git Bash 에서 돌린 것. PowerShell 로. - **`error: linker 'link.exe' not found`** → Build Tools 의 "C++ 데스크톱 개발" 이 안 깔린 것. 깔고 PowerShell 새로 열기. - **설치했는데 옛 버전 그대로** → Windows 는 같은 버전 msi 를 건너뜀. `4_rust_tauri\src-tauri\tauri.conf.json` 과 `Cargo.toml` 의 version 을 올리고(예: 0.1.5) 다시 빌드. 올린 건 커밋해서 푸시. - **로그인이 안 됨 / 화면이 빈 채로** → `.env.production` 을 안 만들었거나 오타. 2번 다시. 그리고 브라우저에서 `http://20.200.170.37:8080/api/v1/health` 가 열리는지 확인(사내망이면 방화벽). - **핫키가 안 먹음** → 다른 프로그램이 같은 키를 먼저 잡은 것. 트레이 아이콘 우클릭 → 열기 로는 됨. - **답변이 안 오고 error** → 서버 쪽 문제. 관측 화면 `http://20.200.170.37:6006` 에서 트레이스 확인하거나 나한테. ## 참고 - 맥 빌드본은 `.env.production` 외에 `src-tauri/Info.plist`(http 허용) 가 필요한데 이미 repo 에 있음. Windows 는 무관. - 빌드 결과물(`target/`, `dist/`)은 git 에 안 올림. msi 만 팀 채널로 공유.